前提
SpringでREST APIを作成しています。
環境:java8,Spring4,MyBatis,MySQL
実現したいこと
一覧を取得したときに、
int型の値も取得して表示させたい。
発生している問題・エラーメッセージ
一覧を取得したときに、 MySQL上は1になっている、 private int markの値が0で返ってきている。 String型のタイトルは変更可能。 json形式で渡す際に問題があるのでしょうか。 number型に変更する等を調べてみたのですが、わかりませんでした。
該当のソースコード
java
1public class MemoController { 2 private final MemoService memoService; 3 4 public MemoController(MemoService dateService) { 5 this.memoService = dateService; 6 } 7 8 /* Top */ 9 @GetMapping("/memos") 10 public List<Memo> index() { 11 return memoService.getMemoList(); 12 } 13 14略
java
1@Service 2@Transactional 3public class MemoService { 4 private final MemoMapper memoMapper; 5 6 public MemoService(MemoMapper memoMapper) { 7 this.memoMapper = memoMapper; 8 } 9 10 // 全件取得 11 public List<Memo> getMemoList() { 12 return memoMapper.findAll(); 13 }
java
1@Data 2public class Memo { 3 4 private int id; 5 6 private String title; 7 8 private int mark; 9}
java
1@Mapper 2public interface MemoMapper { 3 // 全件取得 4 public List<Memo> findAll();
MemoMapper.xml
1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 3<mapper namespace="com.example.demo.repository.MemoMapper"> 4 <select id="findAll" resultType="com.example.demo.entity.Memo"> 5 SELECT 6 * 7 FROM 8 memos 9 </select>
SQL
1CREATE TABLE IF NOT EXISTS memos ( 2 id INT(50) PRIMARY KEY AUTO_INCREMENT, 3 title VARCHAR(50) NOT NULL, 4 mark_div INT(50) NOT NULL 5);
試したこと
・Integerをintに変更(IntegerだとNullになった)
・@initializeをEntityに記入(何も変わらなかった)
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/17 07:19