通过配置文件设置 项目的端口和名字
-
代码结构
- -
/SpringBootBasic/src/main/resources/application.properties
//设置项目的端口号
server.port=9080
//设置工程名字
// 所有路径都需要加a. http:localhost:9080/a/all
server.servlet.context-path=/a
通过Spring的IOC 控制反转 管理对象
- service 类上加注解 @Service
- Controller类使用的时候,通过注解@Resource
package com.zz.controller;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zz.entity.User;
import com.zz.service.UserService;
@RestController
//在类的上面,配置一个拦截路径,那么这个类里面所有方法的
//路径前面,必须加上这个us2. 避免和其他类的路径重复
@RequestMapping("us2")
public class UserController2 {
//使用spring的ioc 控制反转。让spring容器帮我们创建对象
@Resource
UserService us;
//拦截路径是:http://localhost:9080/a/us2/all
@RequestMapping("all")
public List<User> getAll(){
List<User> userlist=us.selectAll();
return userlist;
}
@RequestMapping("delete")
public Map remove(HttpServletRequest request){
String id=request.getParameter("uid");
boolean rs=us.deleteById(id);
Map map=new HashMap();
map.put("result", rs);
return map;
}
}
开始集成JAP
-
终项目工程结构
-
POM 配置需要的包
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>zz</groupId>
<artifactId>SpringBoot2</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>SpringBootJPA</artifactId>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--目的:《可选》引入springboot 热启动,每次修改以后,会自动把改动加载,不需要重启服务了-->
<dependency> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.15</version>
</dependency>
<!-- 添加JPA的支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
<repositories>
<repository>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
- /SpringBootJPA/src/main/resources/application.properties
//设置项目的端口号
server.port=9081
//设置工程名字
server.servlet.context-path=/b
// 数据库的信息
spring.datasource.url = jdbc:mysql://localhost:3306/java10?useSSL=false&serverTimezone=Asia/Shanghai
spring.datasource.username = root
spring.datasource.password = Java20190713*yy
spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver
spring.jpa.database = MYSQL
spring.jpa.show-sql = true
spring.jpa.hibernate.ddl-auto = update
- 实体类Entity
package com.zz.entity;
import java.sql.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class OrderMaster {
@Id
@Column(length=50)
private String id;
private String name;
private double total;
private String address;
private Date createTime;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getTotal() {
return total;
}
public void setTotal(double total) {
this.total = total;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
}
- Repository
package com.zz.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.CrudRepository;
import com.zz.entity.OrderMaster;
public interface OrderMasterRepository extends CrudRepository<OrderMaster,String>{
}
- Service
package com.zz.service;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.zz.entity.OrderMaster;
import com.zz.repository.OrderMasterRepository;
@Service
public class OrderService {
@Resource
OrderMasterRepository masterRepository;
public OrderMaster addmaster(OrderMaster master){
return masterRepository.save(master);
}
}
- controller
package com.zz.controller;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zz.entity.OrderMaster;
import com.zz.service.OrderService;
import com.zz.util.KeyUtil;
@RestController
@RequestMapping("ordermaster")
public class OrderController {
@Resource
OrderService orderService;
//测试地址:http://localhost:9081/b/ordermaster/add?address=ddd&name=jacky
@RequestMapping("add")
public OrderMaster save(HttpServletRequest request){
String address=request.getParameter("address");
String name=request.getParameter("name");
OrderMaster master=new OrderMaster();
master.setId(KeyUtil.genUniqueKey());
master.setAddress(address);
master.setName(name);
return orderService.addmaster(master);
}
}