Spring boot jdbc 自定义SQL查询
来源:互联网 发布:ubuntu如何安装福昕 编辑:程序博客网 时间:2024/09/21 08:42
闲来没事,中午学了spring boot 感觉还不错,避免了繁琐的配置文件,提高开发效率还不错。个人认为spring boot也就简化配置而已。在学习中也遇到一些问题,@Autowired无法自动装入bean,是由于对spring boot 不够了解,先上代码吧
项目结构
项目说名,spring boot jdbcTemplate自定义sql 查找mysql 数据库数据
maven结构
基本的controller service serviceimpl 就不用说了
Data 是自己的工具类,
建好项目后先搞pom.xml,用到什么加什么依赖,仓库没有的话,下载慢的话可以配置阿里的镜像maven仓库,速度不错,比国外的块多了,方法:maven 的setting.xml 只需加入
pom.xml
我的pom.xml 是用到什么引入什么。大家不一定和我的一样,有些是必须的,
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.21</version> </dependency></dependencies><build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins></build>
属性配置文件applocations.properties
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/zanghan
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5
server.port=8080
server.session.timeout=10
server.tomcat.uri-encoding=UTF-8
Application为程序入口
package com.zanghan.myProject;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main (String [] args){ SpringApplication.run(Application.class, args);}
}
UserService 接口
package com.zanghan.myProject.service;
import org.springframework.stereotype.Component;
import com.zanghan.myProject.Data.IDataset;
@Component //这个不加的话,@Autowired将找不到bean
public interface UserService {
public IDataset queryUserList();
}
UserserviceImpl 实现类
package com.zanghan.myProject.serviceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zanghan.myProject.Data.BaseDAO;
import com.zanghan.myProject.Data.IDataset;
import com.zanghan.myProject.service.UserService;
@Service
public class UserServiceImpl implements UserService {
@Autowiredprivate BaseDAO baseDAO;@Overridepublic IDataset queryUserList() { String sql = "select * from user"; return baseDAO.query(sql,null);}
}
UserController控制器
package com.zanghan.myProject.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zanghan.myProject.Data.IDataset;
import com.zanghan.myProject.service.UserService;
@RestController
@RequestMapping(“/user”)
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/getUsers")public IDataset getUserList(){ IDataset userList=userService.queryUserList(); return userList;}
}
运行直接访问
localhost:8080/user/getUsers/
可根据你传的sql得到数据库的数据,
不使用我的工具类,同样实现方式*
工具类为读写分离实现,BaseDao封装jdbcTemplate处理,IDataset 是对json数据的处理接收,当然也可以不用工具类,sql ,jdbcTemplate处理.也就是修改接收查到的数据格式而已
service 层
@Component //这个不加的话,@Autowired将找不到bean
public interface UserService {
public List<Map<String, Object>> queryUserList();
}
serviceImpl实现层
public class UserServiceImpl implements UserService {
@Autowiredprivate JdbcTemplate jdbcTemplate;public List<Map<String, Object>> queryUserList(){ String sql = "select * from appuser"; List<Map<String, Object>> list = jdbcTemplate.queryForList(sql); return list;}
}
控制层便不写了,同样调用service ,数据接收不同而已
- Spring boot jdbc 自定义SQL查询
- Spring Data Jpa自定义sql查询返回
- Spring Boot Jpa之构建动态SQL查询语句
- Spring Boot应用连接数据库MySQL,并编写自定义SQL
- spring boot 自定义PropertyPlaceholderConfigurer
- spring boot 自定义banner
- spring boot自定义starter
- spring boot自定义JPaRepository
- Spring Boot自定义Banner
- Spring Boot 自定义PropertySourceLoader
- Spring Boot-自定义配置
- Spring Boot 自定义注解
- Spring Boot 自定义starter
- Spring Boot自定义Banner
- Spring Boot自定义PropertySourceLoader
- Spring Boot自定义配置
- spring-boot,jdbc,jsp配置
- Spring Boot JDBC 连接数据库
- 脉冲云之实战Nodejs计时器的玩法
- Python 备份文件
- 时间间隔分钟数计算
- 安卓再按一次退出程序(Activity)
- MySQL学习笔记
- Spring boot jdbc 自定义SQL查询
- UE4 X HTC Vive游戏开发笔记(二)
- 安装pods时候遇到的一个小坑。
- Java的守护线程与非守护线程
- Qt信号与槽参数个数与类型问题
- apache设置中文支持&长文件名显示
- Android测试工具之强大的adb工具
- nginx配置详细-最全说明
- JS获取鼠标的坐标和滚动条的位置