一,事物管理
只需在方法上加@Transactional注解
或在类上加@Transactional
二、整合jpa
1,pom
<!-- 整合jpa -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
2,application.yml
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/test
driver-class-name: com.mysql.jdbc.Driver
jackson:
serialization:
indent-output: true #让控制台输出json字符串格式
jpa:
hibernate:
ddl-auto: update
dialect: org.hibernate.dialect.MySQL5Dialect
3,User
@Entity
@Table(name="sys_user") //数据库表名
public class User {
@Id //主键
@GeneratedValue(strategy=GenerationType.IDENTITY) //生成策略
private Integer id;
@Column(name="vc_name")
private String name;
private String account;
private String password;
private Date updateDate;
}
4,UserDao
public interface UserDao extends JpaRepository<User, Integer> {
}
5,service
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
@Override
public void addUser(User user) {
userDao.save(user);
}
@Override
public User findUserById(Integer id) {
return userDao.findOne(id);
}
@Override
public void deleteUserById(Integer id) {
userDao.delete(id);
}
}
6,Controller
@Controller
@RequestMapping("jpa")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("addUser.do")
@ResponseBody
private String addUser() {
try {
User user = new User("占云巾", "567384343", "123456", new Date());
userService.addUser(user);
} catch (Exception e) {
e.printStackTrace();
return "失败";
}
return "成功";
}
@RequestMapping("findUserById/{id}.do")
@ResponseBody
private User findUserById(@PathVariable("id") Integer id) {
User user = new User();
try {
user = userService.findUserById(id);
userService.addUser(user);
} catch (Exception e) {
e.printStackTrace();
}
return user;
}
@RequestMapping("deleteUserById/{id}.do")
@ResponseBody
private String deleteUserById(@PathVariable Integer id) {
try {
userService.deleteUserById(id);
} catch (Exception e) {
e.printStackTrace();
return "失败";
}
return "成功";
}
}
6,启动类
@SpringBootApplication(scanBasePackages= {"com.*.controller",
"com.*.service.*","com.*.dao","com.*.job"})
@MapperScan("com.*.dao")
@EntityScan(basePackages="com.jpa.pojo") //扫描实体类
@EnableJpaRepositories("com.jpa.dao")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}