這里面采用jdbcTemplate來作為數(shù)據(jù)庫的訪問功能耻姥,dao只簡單包括用戶的登錄、news的增刪改查有咨。
1琐簇、pom依賴
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</dependency>
</dependencies>
這里是主要是Springboot的依賴和數(shù)據(jù)庫的。
1座享、配置數(shù)據(jù)庫連接application.yml
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/springboot
username: root
password: root
2婉商、編寫model
public class User {
private int id;
private String username;//
private String passsword;//
// 忽略set get
}
public class News {
private int id;//
private String title;//標題
private String content;//內(nèi)容
// 忽略set get
}
3、編寫dao
@Repository
public class UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
public User getByUsername(String username) {
List<User> list = jdbcTemplate.query("select * from t_user where username = ?", new Object[]{username}, new BeanPropertyRowMapper(User.class));
return list.size() > 0 ? list.get(0) : null;
}
}
@Repository
public class NewsDao {
@Autowired
private JdbcTemplate jdbcTemplate;
public int add(News news) {
String sql = "insert into t_news(title,content) values(:title,:content)";
return new NamedParameterJdbcTemplate(jdbcTemplate).update(sql, new BeanPropertySqlParameterSource(news));
}
public int update(News news) {
String sql = "update t_news SET title=:title,content=:content WHERE id=?";
return new NamedParameterJdbcTemplate(jdbcTemplate).update(sql, new BeanPropertySqlParameterSource(news));
}
public int delete(int id) {
return jdbcTemplate.update("DELETE from t_news where id=?", id);
}
public News get(int id) {
List<News> list = jdbcTemplate.query("select * from t_news where id = ?", new Object[]{id}, new BeanPropertyRowMapper(News.class));
return list.size() > 0 ? list.get(0) : null;
}
public List<News> list() {
List<News> list = jdbcTemplate.query("select * from t_news", new BeanPropertyRowMapper(News.class));
return list;
}
}
4征讲、編寫service
@Service
public class UserService {
@Autowired
private UserDao userDao;
public User getByUsername(String username) {
return userDao.getByUsername(username);
}
}
@Service
public class NewsService {
@Autowired
private NewsDao newsDao;
public int add(News news) {
return newsDao.add(news);
}
public int update(News news) {
return newsDao.update(news);
}
public int delete(int id) {
return newsDao.delete(id);
}
public News get(int id) {
return newsDao.get(id);
}
public List<News> list() {
return newsDao.list();
}
}