Skip to content

Commit

Permalink
Merge pull request #29 from shortintern2020-A-labyrinth/backend_model
Browse files Browse the repository at this point in the history
Backend model
  • Loading branch information
Highmt authored Aug 26, 2020
2 parents ccc056a + e51e756 commit d863e74
Show file tree
Hide file tree
Showing 13 changed files with 176 additions and 3 deletions.
3 changes: 3 additions & 0 deletions demo.iml
Original file line number Diff line number Diff line change
Expand Up @@ -175,5 +175,8 @@
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.12" level="project" />
<orderEntry type="library" name="Maven: org.seasar.doma:doma:2.18.0" level="project" />
<orderEntry type="library" name="Maven: com.vdurmont:emoji-java:4.0.0" level="project" />
<orderEntry type="library" name="Maven: org.json:json:20170516" level="project" />

</component>
</module>
5 changes: 4 additions & 1 deletion docker/pg/1-createTable.sql
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,13 @@ create table emojicode (
emoji_code varchar(30)
);


insert into users(name, mail, filterlevel) values
('ichigo.chocomint', '[email protected]', 1),
('banana.chocomint', '[email protected]', 2),
('pinapple.chocomint', '[email protected]', 3)
;

insert into emolog(userid, friendid, name, latestemolog)
values (1, 2, 'hoge', 'emojihoge')
;

6 changes: 6 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,12 @@
<artifactId>doma</artifactId>
<version>${doma.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.vdurmont/emoji-java -->
<dependency>
<groupId>com.vdurmont</groupId>
<artifactId>emoji-java</artifactId>
<version>4.0.0</version>
</dependency>
</dependencies>

<build>
Expand Down
34 changes: 34 additions & 0 deletions src/main/java/com/example/demo/controller/EmologController.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package com.example.demo.controller;

import com.example.demo.entity.Emolog;
import com.example.demo.entity.Sample;
import com.example.demo.service.EmologService;
import com.example.demo.service.SampleService;
import org.springframework.ui.Model;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;


@RestController
@RequestMapping(path = "/emologlist")
public class EmologController {

@Autowired
EmologService service;

@RequestMapping(value="/{userid}/{friendid}",method=RequestMethod.GET)
public String selectAll(@PathVariable("userid") String userid, @PathVariable("friendid") String friendid, Model model) {
int userId = Integer.parseInt(userid);
int friendId = Integer.parseInt(friendid);
List<Emolog> emologs = service.selectAll(userId, friendId);
model.addAttribute("emologs", emologs);
return "emologlist";
}

}
20 changes: 20 additions & 0 deletions src/main/java/com/example/demo/dao/EmologDao.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.example.demo.dao;

import com.example.demo.entity.Emolog;
import com.example.demo.entity.Sample;
import org.seasar.doma.Dao;
import org.seasar.doma.Insert;
import org.seasar.doma.Select;
import org.seasar.doma.boot.ConfigAutowireable;
import org.springframework.transaction.annotation.Transactional;

import java.util.HashMap;
import java.util.List;

@Dao
@ConfigAutowireable
public interface EmologDao {

@Select
List<Emolog> selectAll(int user, int friend);
}
48 changes: 48 additions & 0 deletions src/main/java/com/example/demo/entity/Emolog.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
package com.example.demo.entity;



import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.seasar.doma.Entity;
import org.seasar.doma.GeneratedValue;
import org.seasar.doma.GenerationType;
import org.seasar.doma.Id;
import org.springframework.format.datetime.standard.DateTimeContext;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.time.LocalDateTime;


@Entity
@Data
@Getter
@Setter
public class Emolog implements Serializable {

private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;

@NotNull
@Size(min=30)
private String userid;

@NotNull
@Size(min=50)
private String friendid;

private LocalDateTime create_at;

@NotNull
@Max(40)
private String contents;


}
2 changes: 1 addition & 1 deletion src/main/java/com/example/demo/entity/Sample.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public class Sample implements Serializable {
private static final long serialVersionUID = 1L;

@Id
// @GeneratedValue(strategy = GenerationType.IDENTITY)
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;

@NotNull
Expand Down
23 changes: 23 additions & 0 deletions src/main/java/com/example/demo/repository/EmologRepository.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.example.demo.repository;

import com.example.demo.dao.EmologDao;
import com.example.demo.dao.SampleDao;
import com.example.demo.entity.Emolog;
import com.example.demo.entity.Sample;
import org.seasar.doma.Insert;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import java.util.HashMap;
import java.util.List;

@Repository
public class EmologRepository {

@Autowired
EmologDao dao;

public List<Emolog> selectAll(int user, int friend) { // (4)
return dao.selectAll(user, friend);
}
}
24 changes: 24 additions & 0 deletions src/main/java/com/example/demo/service/EmologService.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package com.example.demo.service;

import com.example.demo.entity.Emolog;
import com.example.demo.entity.Sample;
import com.example.demo.repository.EmologRepository;
import com.example.demo.repository.SampleRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.ui.Model;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
public class EmologService {

@Autowired
EmologRepository repository;

public List<Emolog> selectAll(int user, int friend){
return repository.selectAll(user, friend);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
select *
from emolog
where
userid = /* user */1
and
friendid = /* friend */1
order by create_at
7 changes: 6 additions & 1 deletion src/main/resources/application.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,9 @@ spring.datasource.password=postgres

jsonStoreEnabled=true

spring.thymeleaf.mode=HTML
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=LEGACYHTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html

Binary file modified target/classes/com/example/demo/DemoApplication.class
Binary file not shown.
Binary file modified target/classes/com/example/demo/controller/ViewController.class
Binary file not shown.

0 comments on commit d863e74

Please sign in to comment.