springboot-mybatis-sqlserver

IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[user]') AND type IN ('U'))
	DROP TABLE [dbo].[user]
GO

CREATE TABLE [dbo].[user] (
  [user_id] int  NOT NULL,
  [username] varchar(255) COLLATE Chinese_PRC_CI_AS  NULL,
  [password] varchar(255) COLLATE Chinese_PRC_CI_AS  NULL,
  [create_time] datetime  NULL,
  [update_time] datetime  NULL
)
GO

ALTER TABLE [dbo].[user] SET (LOCK_ESCALATION = TABLE)
GO


-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO [dbo].[user] ([user_id], [username], [password], [create_time], [update_time]) VALUES (N'1', N'6666', N'ldj', NULL, NULL)
GO


-- ----------------------------
-- Primary Key structure for table user
-- ----------------------------
ALTER TABLE [dbo].[user] ADD CONSTRAINT [PK__user__B9BE370F3901C0A2] PRIMARY KEY CLUSTERED ([user_id])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)  
ON [PRIMARY]
package com.example.demo_sqlserver;


import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication

@MapperScan("com.example.demo_sqlserver.dao")
public class DemoSqlserverApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoSqlserverApplication.class, args);
    }

}
package com.example.demo_sqlserver.controller;


import com.example.demo_sqlserver.entity.po.User;
import com.example.demo_sqlserver.service.IUserService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;


/**
 * @author JackRen
 * @date 2021/3/11
 **/
@RestController
public class UserController {
    @Resource
    private IUserService userService;


    @PostMapping("updateUserData")
    public void updateUserById(@RequestBody User user) {
        userService.updateUserById(user);
    }

}
package com.example.demo_sqlserver.dao;


import com.example.demo_sqlserver.entity.po.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;


@Mapper
public interface UserMapper {
    int updateUserById(User user);
}
package com.example.demo_sqlserver.entity.po;

import lombok.Data;

import java.sql.Timestamp;

/**
 * @author: xueshan.zeng
 * @date: 2019/8/7
 */
@Data
public class User {
    private int userId;
    private String username;
    private String password;
    private Timestamp createTime;
    private Timestamp updateTime;
}
package com.example.demo_sqlserver.service.impl;

import com.example.demo_sqlserver.dao.UserMapper;
import com.example.demo_sqlserver.entity.po.User;
import com.example.demo_sqlserver.service.IUserService;

import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @author JackRen
 * @date 2021/3/11
 **/
@Service("userService")
public class UserServiceImpl implements IUserService {
    private static final String ONE = "1";

    @Resource
    private UserMapper userMapper;

    @Override
    public void updateUserById(User user) {
        int ret = userMapper.updateUserById(user);
        System.out.println(ret);
    }

}
package com.example.demo_sqlserver.service;

import com.example.demo_sqlserver.entity.po.User;

public interface IUserService {
    void updateUserById(User user);
}
spring:
  profiles:
    active: dev

spring:
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test;integratedSecurity=false;encrypt=false;trustServerCertificate=false
    username: sa
    password: 123456
    hikari:
      minimum-idle: 5
      maximum-pool-size: 15
      auto-commit: true
      idle-timeout: 30000
      pool-name: DatebookHikariCP
      max-lifetime: 900000
      connection-timeout: 15000
      connection-test-query: SELECT 1


mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.example.demo_sqlserver.entity
  configuration:
    map-underscore-to-camel-case: true
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo_sqlserver.dao.UserMapper">
    <resultMap id="BaseResultMap" type="com.example.demo_sqlserver.entity.po.User">
        <result column="user_id" jdbcType="NUMERIC" property="userId"/>
        <result column="username" jdbcType="VARCHAR" property="username"/>
        <result column="password" jdbcType="VARCHAR" property="password"/>
        <result column="create_time" jdbcType="VARCHAR" property="createTime"/>
        <result column="update_time" jdbcType="VARCHAR" property="updateTime"/>
    </resultMap>
    <sql id="selectModelsSql">
        select user_id, username, password, create_time, update_time, ROW_NUMBER() OVER (ORDER BY user_id ASC) as rn
        from [user]
    </sql>
    <!--    <select id="selectModels" resultMap="BaseResultMap">-->
    <!--        select a.*-->
    <!--        from (-->
    <!--        <include refid="selectModelsSql"></include>-->
    <!--        ) a-->
    <!--        <if test="fetchAll == false">-->
    <!--            where a.rn <![CDATA[>=]]> #{pageStart,jdbcType=INTEGER} and a.rn <![CDATA[<=]]> #{pageEnd,jdbcType=INTEGER}-->
    <!--        </if>-->
    <!--    </select>-->
    <!--    <select id="selectCount" resultType="int">-->
    <!--        select count(*)-->
    <!--        from (-->
    <!--        <include refid="selectModelsSql"></include>-->
    <!--        ) a-->
    <!--    </select>-->

    <!--    <insert id="insertUser" parameterType="com.example.demo_sqlserver.entity.po.User">-->
    <!--        insert into [user](user_id, username, password, create_time, update_time)-->
    <!--        values (#{userId}, #{username}, #{password}, #{createTime}, #{updateTime})-->
    <!--    </insert>-->

    <update id="updateUserById">
        update [user]
        <set>
            <if test="username != null">username=#{username},</if>
            <if test="password != null">password=#{password},</if>
            <if test="createTime != null">create_time=#{createTime},</if>
            <if test="updateTime != null">update_time=#{updateTime},</if>
        </set>
        where user_id=#{userId}
    </update>

</mapper>

 

 完成

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值