Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backend model #29

Merged
merged 3 commits into from
Aug 26, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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.