提交 93503583 编写于 作者: MaxKey单点登录官方's avatar MaxKey单点登录官方

update skip null

上级 3d603fe3
activeProfiles=D\:\\JavaIDE\\apache-maven-3.6.3/ activeProfiles=
eclipse.preferences.version=1 eclipse.preferences.version=1
resolveWorkspaceProjects=false resolveWorkspaceProjects=true
version=1 version=1
...@@ -33,10 +33,15 @@ public class SqlProviderInsert <T extends JpaBaseDomain>{ ...@@ -33,10 +33,15 @@ public class SqlProviderInsert <T extends JpaBaseDomain>{
sql.INSERT_INTO(MapperMetadata.getTableName(entity.getClass())); sql.INSERT_INTO(MapperMetadata.getTableName(entity.getClass()));
for (int i = 0; i < listFields.size(); i++) { for (int i = 0; i < listFields.size(); i++) {
FieldColumnMapper fieldColumnMapper=listFields.get(i); FieldColumnMapper fieldColumnMapper=listFields.get(i);
if(fieldColumnMapper.getFieldType().equalsIgnoreCase("String") if(
&&BeanUtil.getValue(entity, fieldColumnMapper.getFieldName())==null (
&&fieldColumnMapper.getGeneratedValue()==null) { fieldColumnMapper.getFieldType().equalsIgnoreCase("String")
||fieldColumnMapper.getFieldType().startsWith("byte")
)
&&BeanUtil.getValue(entity, fieldColumnMapper.getFieldName())==null
&&fieldColumnMapper.getGeneratedValue()==null) {
//skip null field value //skip null field value
_logger.trace("skip field value is null ");
}else { }else {
//have GeneratedValue and (value is null or eq "") //have GeneratedValue and (value is null or eq "")
if(fieldColumnMapper.getGeneratedValue()!=null if(fieldColumnMapper.getGeneratedValue()!=null
......
...@@ -34,12 +34,19 @@ public class SqlProviderUpdate <T extends JpaBaseDomain>{ ...@@ -34,12 +34,19 @@ public class SqlProviderUpdate <T extends JpaBaseDomain>{
for (int i = 0; i < listFields.size(); i++) { for (int i = 0; i < listFields.size(); i++) {
FieldColumnMapper fieldColumnMapper=listFields.get(i); FieldColumnMapper fieldColumnMapper=listFields.get(i);
_logger.trace("Field " +fieldColumnMapper.getFieldName()+" , Type "+ fieldColumnMapper.getFieldType());
if (fieldColumnMapper.isIdColumn()) { if (fieldColumnMapper.isIdColumn()) {
continue; continue;
} }
if(fieldColumnMapper.getFieldType().equalsIgnoreCase("String")&&BeanUtil.getValue(entity, fieldColumnMapper.getFieldName())==null) { if(
(fieldColumnMapper.getFieldType().equalsIgnoreCase("String")
||fieldColumnMapper.getFieldType().startsWith("byte")
)
&&BeanUtil.getValue(entity, fieldColumnMapper.getFieldName())==null) {
//skip null field value //skip null field value
_logger.trace("skip field value is null ");
}else { }else {
sql.SET(fieldColumnMapper.getColumnName() + "=#{" + fieldColumnMapper.getFieldName() + "}"); sql.SET(fieldColumnMapper.getColumnName() + "=#{" + fieldColumnMapper.getFieldName() + "}");
} }
......
...@@ -58,7 +58,7 @@ public class MyBatisTestRunner { ...@@ -58,7 +58,7 @@ public class MyBatisTestRunner {
Thread.sleep(1000); Thread.sleep(1000);
_logger.info("insert id " + student.getId()); _logger.info("insert id " + student.getId());
service.remove(student.getId()); //service.remove(student.getId());
} }
...@@ -71,6 +71,23 @@ public class MyBatisTestRunner { ...@@ -71,6 +71,23 @@ public class MyBatisTestRunner {
_logger.info("Students "+student); _logger.info("Students "+student);
} }
@Test
public void update() throws Exception{
_logger.info("get...");
Students student=service.get("317d5eda-927c-4871-a916-472a8062df23");
System.out.println("Students "+student);
_logger.info("Students "+student);
_logger.info("update...");
student.setImages(null);
service.update(student);
_logger.info("updateed.");
student.setImages("ssss".getBytes());
service.update(student);
_logger.info("updateed2.");
}
@Test @Test
public void find() throws Exception{ public void find() throws Exception{
......
...@@ -52,6 +52,9 @@ public class Students extends JpaBaseDomain implements Serializable{ ...@@ -52,6 +52,9 @@ public class Students extends JpaBaseDomain implements Serializable{
@Column @Column
private String stdClass; private String stdClass;
@Column
private byte[] images;
public Students() { public Students() {
super(); super();
...@@ -131,6 +134,16 @@ public class Students extends JpaBaseDomain implements Serializable{ ...@@ -131,6 +134,16 @@ public class Students extends JpaBaseDomain implements Serializable{
} }
public byte[] getImages() {
return images;
}
public void setImages(byte[] images) {
this.images = images;
}
@Override @Override
public String toString() { public String toString() {
return "Students [id=" + id + ", stdNo=" + stdNo + ", stdName=" + stdName + ", stdGender=" + stdGender return "Students [id=" + id + ", stdNo=" + stdNo + ", stdName=" + stdName + ", stdGender=" + stdGender
......
...@@ -5,18 +5,16 @@ ...@@ -5,18 +5,16 @@
<PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" /> <PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console> </Console>
</appenders> </appenders>
<loggers> <loggers>
<root level="debug">
<appender-ref ref="consolePrint" /> <Logger name="org.springframework" level="INFO"></Logger>
</root> <Logger name="org.apache.mybatis" level="DEBUG"></Logger>
<Logger name="org.springframework" level="INFO"> <Logger name="org.apache.mybatis.jpa" level="TRACE"></Logger>
<appender-ref ref="consolePrint" />
</Logger> <root level="INFO">
<Logger name="org.apache.mybatis" level="DEBUG"> <appender-ref ref="consolePrint" />
<appender-ref ref="consolePrint" /> </root>
</Logger> </loggers>
</loggers>
</configuration> </configuration>
\ No newline at end of file
...@@ -11,12 +11,9 @@ ...@@ -11,12 +11,9 @@
<root level="debug"> <root level="debug">
<appender-ref ref="consolePrint" /> <appender-ref ref="consolePrint" />
</root> </root>
<Logger name="org.springframework" level="INFO">
<appender-ref ref="consolePrint" /> <Logger name="org.springframework" level="INFO"></Logger>
</Logger> <Logger name="org.apache.mybatis" level="DEBUG"></Logger>
<Logger name="org.apache.mybatis" level="DEBUG">
<appender-ref ref="consolePrint" />
</Logger>
</loggers> </loggers>
</configuration> </configuration>
\ No newline at end of file
...@@ -35,6 +35,11 @@ ...@@ -35,6 +35,11 @@
</properties> </properties>
<repositories> <repositories>
<repository>
<id>mvnrepository</id>
<name>mvnrepository</name>
<url>http://mvnrepository.com/</url>
</repository>
<repository> <repository>
<id>sonatype-nexus-staging</id> <id>sonatype-nexus-staging</id>
<name>Sonatype Nexus Staging</name> <name>Sonatype Nexus Staging</name>
...@@ -45,14 +50,6 @@ ...@@ -45,14 +50,6 @@
<name>jcenter</name> <name>jcenter</name>
<url>http://jcenter.bintray.com</url> <url>http://jcenter.bintray.com</url>
</repository> </repository>
<!--
<repository>
<id>mvnrepository</id>
<name>mvnrepository</name>
<url>http://mvnrepository.com/</url>
</repository>
-->
</repositories> </repositories>
<dependencies> <dependencies>
...@@ -140,12 +137,12 @@ ...@@ -140,12 +137,12 @@
<dependency> <dependency>
<groupId>org.mybatis</groupId> <groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId> <artifactId>mybatis</artifactId>
<version>3.5.3</version> <version>3.5.6</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.mybatis</groupId> <groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId> <artifactId>mybatis-spring</artifactId>
<version>2.0.2</version> <version>2.0.6</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册