javascript
白山云科技java_SpringBoot——04SSM
一.導入jar包
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
mysql
mysql-connector-java
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.1.1
com.github.pagehelper
pagehelper
4.1.0
2.創建啟動類App.java
@SpringBootApplication
@MapperScan("cn.itsource.springboot.employee.mapper")//掃描Mapper的路徑
public class SSMApplication {
public static void main(String[] args) {
SpringApplication.run(SSMApplication.class);
}
}
3.在application.yml添加配置文件
spring:
datasource:
url: jdbc:mysql://localhost:3306/test
driver-class-name: com.mysql.jdbc.Driver
password: root
username: root
mybatis:
type-aliases-package: cn.itsource.springboot.employee.domain,cn.itsource.springboot.employee.query
4.編寫DemoMapper
public interface UserMapper {
void save(User user);
List queryPage(UserQuery query);
}
5.編寫DemoService
@Service
@Transactional(propagation = Propagation.SUPPORTS,readOnly = true)//類級別是只讀事務
public class UserServiceImpl implements IUserService {
@Autowired
private UserMapper userMapper;
@Transactional(propagation = Propagation.REQUIRED,readOnly = false)
//@Transactional 后兩個配置是默認值
@Override
public void add(User user) {
userMapper.save(user);
// int i = 1/0;
}
@Override
public List queryPage(UserQuery query) {
PageHelper.startPage(1, 2); //limit (pageNum-1)*pageSize,pageSize
return userMapper.queryPage(query);
}
}
6.編寫Test
@RunWith(SpringRunner.class)
@SpringBootTest(classes = SSMApplication.class)
public class IUserServiceTest {
@Autowired
private IUserService userService;
@Test
public void add()
{
User ww = new User("ww");
System.out.println(ww);//沒有id
userService.add(ww);
System.out.println(ww);//有id
}
@Test
public void testList() throws Exception{
//com.github.pagehelper.Page --->PageList(currentPage,pageSizs,totalRecords,totalpages,Data)
Page list = (Page) userService.queryPage(new UserQuery());
System.out.println(list.getClass());
System.out.println("總記錄數:"+list.getTotal());
System.out.println("總頁數:"+list.getPages());
System.out.println("當前頁"+list.getPageNum());
System.out.println("每頁多少條:"+list.getPageSize());
for (User o : list) {
System.out.println(o);
}
}
}
xml版本的xml(獲取自增Id)
/p>
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
//獲取自增Id
insert into t_user(name) values(#{name})
SELECT * FROM t_user
annotation版本(獲取自增Id)
public interface UserMapper {
@Insert("insert into t_user(name) values(#{name})")
@Options(useGeneratedKeys = true,keyProperty = "id",keyColumn = "id")//獲取自增Id
void save(User user);
}
分頁插件的配置
@Configuration //相當于我們建了applicationContext-xxx.xml
public class MyBatisConfiguration {
//相當于配置了一個bean
@Bean
public PageHelper pageHelper() {
System.out.println("MyBatisConfiguration.pageHelper()");
PageHelper pageHelper = new PageHelper();
Properties p = new Properties();
p.setProperty("offsetAsPageNum", "true");
p.setProperty("rowBoundsWithCount", "true");
p.setProperty("reasonable", "true");
pageHelper.setProperties(p);
return pageHelper;
}
}
總結
以上是生活随笔為你收集整理的白山云科技java_SpringBoot——04SSM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我告诉你我的心事
- 下一篇: 职高2020计算机有哪些学校,海宁职业高