springboot学习十--事物管理、整合jpa

一,事物管理

只需在方法上加@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);
	}
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/yzx15855401351/article/details/100048642
今日推荐