mybatis的特殊用法,一个语句顶所有的写法

1.写个TestMapper.xml 

<?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.lu.dao.TestMapper">
     <insert id="executeTest">
        ${sql}
    </insert>

 
    <update id="insertData" parameterType="string">
        insert into tb_plat_kpi_value values('13',#{a},1,0)
    </update>

</mapper>

2.写个TestMapper.java类

import org.apache.ibatis.annotations.Param;

public interface TestMapper {
    int  executeTest(@Param("sql") String sql);
    
    int insertData(String a);
    
    //int  executeTest(String sql);
}

3.写个TestService.java类

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.hikvision.nms.collect.plan.dao.TestMapper;

@Service
public class TestService {
    
    @Autowired
    private TestMapper testMapper;

    public int testSql(String sql){
        int result=testMapper.executeTest(sql);
        return result;
    }
    public int testInsertSql(String a){
        int result=testMapper.insertData(a);
        return result;
    }
    

4.写个TestController.java类

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.lu.TestService;
import com.lu.ResponseTestMessage;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

@RequestMapping("/api/v1/Test")
@Controller
@Api(value = "/Test", tags = "接口")
public class TestController {
    
    @Autowired
    private TestService testService;
    @ApiOperation(value = "信息", notes = "信息")
    @ResponseBody
    @RequestMapping(value = "/TestSql", method = RequestMethod.GET)
    public ResponseTestMessage<Integer> registerPlatInfo(String a) {
        ResponseTestMessage<Integer> responseTestMessage = null;
        int testSql = testService.testSql("update users set name = 'test1232321' ");
        int testInsertSql = testService.testInsertSql(a);
        int result=0;
        if(testInsertSql==1 && testSql == 1 ){
            result=1;
        }
        responseTestMessage =new ResponseTestMessage<Integer>(1, result);
        return responseTestMessage ;
    }
}

猜你喜欢

转载自blog.csdn.net/u013452335/article/details/86492810