spring boot+mybatis的小demo
一个spring boot+mybatis的项目需要以下几个文件夹:
也就是它需要自己去手动写sql语句,下面就是她这写文件的代码例子:
1,CompanyMapper.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.b505.system.usercenter2.company.mapper.CompanyMapper">
<!-- 通过company_id查询单一实体 -->
<select id="findByCompanyId" parameterType="Integer" resultType="com.b505.system.usercenter2.company.entity.Company">
select * from company where company_id =#{id}
</select>
</mapper>
2.Company(实体)
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Company implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value="company_id", type = IdType.AUTO)
private Integer companyId;
@TableField("company_name")
private String companyName;
@TableField("company_phone")
private String companyPhone;
//省略get and set 方法
3.CompanyMapper(dao层)
@Repository
public interface CompanyMapper extends BaseMapper<Company> {
/**
* @param :{引入参数名} {引入参数说明}
* @return :{返回参数名} {返回参数说明}
* @throws :TODO @作者:yulin,2019-2-27 18:13
* @方法名: findByCompanyId
* @功能:单一查找,通过company_id
* @修改者:{姓名,时间}
*/
public Company findByCompanyId(int id);
}
4.CompanyService(接口)
public interface CompanyService extends IService<Company> {
/**
*
* @方法名: findByCompanyId
*
* @param :{引入参数名} {引入参数说明}
* @return :{返回参数名} {返回参数说明}
* @功能:用过公司id查询公司信息
* @exception :TODO @作者:yulin,2019-2-18 7:54 @修改者:{姓名,时间}
*/
Company findByCompanyId(int id);
}
5.CompanyServiceImpl(Service层)
@Service
public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements ICompanyService {
Logger logger = LoggerFactory.getLogger(CompanyServiceImpl.class);
@Autowired
private CompanyMapper companyMapper;
@Override
public Company findByCompanyId(int id) {
return companyMapper.findByCompanyId(id);
}
}
6.CompanyController(Controller层)
@Controller
public class CompanyController {
Logger log = LoggerFactory.getLogger(CompanyController.class);
@Autowired
private CompanyService companyService;
/**
*
* @方法名: findByCompanyId
*
* @param :{引入参数名} {引入参数说明}
* @return :{返回参数名} {返回参数说明}
* @功能:通过公司id查找公司信息
* @exception :TODO
* @作者 yulin,2019-2-28 10:16 @修改者:{姓名,时间}
*/
@RequestMapping(value = "/findByCompanyId", method = RequestMethod.POST)
@ResponseBody
public Company findByCompanyId(@RequestBody Map<String, Object> map) throws Exception {
int id = Integer.parseInt(map.get("name") + "");
Company Company = companyService.findCompanyId(id);
return Company;
}
}
这个controller层是接收前台传递过来的json数据,获取到公司id的信息,这个方法的封装在这里就不做过多的介绍。
7.总结:本博客只是介绍了有关spring boot+mybaties其中的最简单的一个查询数据库操作,还有很多我这里没有涉及到的问题。这个只是个例子,希望读者们能够举一反三。