java - pertanyaan versi anotasi mybatis bersepadu but spring
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-06-23 09:14:41
0
2
1162

-spring boot mengintegrasikan mybatis menggunakan anotasi
spring boot dan mybatis telah disepadukan seperti biasa apabila menggunakan pertanyaan (projek tidak mempunyai sebarang fail XML)

@Mapper
@Table(name = "t_user")
public interface UserMapper {

    @Select("select * from t_user where user_id = #{id}")
      public User findUserById(@Param("id") String id);
}

Saya tidak tahu kenapa dengan cara ini, hanya beberapa atribut akan diisi dengan nilai, dan hasil pertanyaan atribut lain semuanya batal

Tetapi jika saya menulis

 @Results({
 @Result(column = "user_id",property = "userId"),
            @Result(column = "username",property = "username"),
            @Result(column = "pass",property = "pass"),
            @Result(column = "phone_number",property = "phoneNumber")
})

Ia akan betul sepenuhnya, setiap atribut mempunyai nilai
Soalan 1: Mengapakah sesetengah atribut mempunyai nilai dan sesetengah atribut tidak mempunyai nilai?
Soalan 2: Saya tidak boleh menulis setiap pertanyaan seperti ini, kerana akan ada banyak pendua@Result部分,有没有注解将其在内部进行对应关系实现,不需要每次都写@ Result?

曾经蜡笔没有小新
曾经蜡笔没有小新

membalas semua(2)
世界只因有你

Soalan 1. Kerana lajur set hasil tidak sesuai dengan sifat Bean, sudah tentu ia akan menjadi batal.

Soalan 2. Anda boleh menggunakan alias dalam sql untuk menjadikan lajur dan sifat sepadan, supaya soalan 1 tidak akan berlaku.

漂亮男人

Untuk soalan 1, kerana medan pangkalan data dipisahkan dengan garis bawah dan medan dalam kacang dinamakan dalam kes unta, seperti nama_pengguna dan Nama pengguna, ia tidak boleh dipadankan

Jika anda mengkonfigurasinya melalui fail xml, anda hanya perlu mendayakan penukaran penamaan kes unta

<setting name="mapUnderscoreToCamelCase" value="true"/> Dalam

yml mungkin seperti ini

mybatis:
  configuration:
    map-underscore-to-camel-case: true
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan