spring-boot项目与spring-boot-data-jpa数据连接结合创建项目详情

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34495753/article/details/83276656

创建spring-boot项目:

1,在spring.io官网下载spring-boot项目

2,点击spring boot进入

选择spring Initializr

3,下载设置

项目下载到本地后(删除不需要的,可删可不删)maven导入eclipse

eclipse中的设置

1:,设置application.properties

# 服务器访问端口
server.port=8080
# 数据库基本配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

spring.jpa.database=MYSQL
# 显示后台处理的SQL语句
spring.jpa.show-sql=true
# 自动检查实体和数据库表是否一致,如果不一致则会进行更新数据库表
spring.jpa.hibernate.ddl-auto=update

2,设置pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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>

	<groupId>com.qxmof</groupId>
	<artifactId>springutil</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>springutil</name>
	<description>Demo project for Spring Boot</description>

    
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.3.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
    
<!--如果项目中已有父类,上面则换成下面格式-->
    <dependencyManagement>
         <dependencies>
            <dependency>
                <!-- Import dependency management from Spring Boot -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>1.2.3.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>



	<properties><!-- 设置各个jar版本-->
		<mysql-connector.version>5.1.38</mysql-connector.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency><!-- 设置web启动必须有-->
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		
		<dependency><!-- 设置数据库连接jpa-jar包-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        
        <dependency><!-- 设置mysql驱动-->
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>${mysql-connector.version}</version>
		</dependency>
			
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>

                  <dependencies><!--热加载-->
                    <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>springloaded</artifactId>
                        <version>1.2.5.RELEASE</version>
                    </dependency>
                </dependencies>

			</plugin>
		</plugins>
	</build>


</project>

3,设置连接数据库类Dao

@Repository
@Transactional//必须加入事务,否则会报错
public interface TestService extends JpaRepository<Test, Integer>{//此处Test会直接生成数据库与表

    //自定义sql
	@Modifying
	@Query(value = "update es_test et set et.name = :name where et.id = :id",nativeQuery = true)
	public int update(@Param("name") String name,@Param("id") Integer id);
}

4,创建实体类

@Entity//实体类
@Table(name="es_test")//映射数据库表名
public class Test {

	@Id//注释id
	@GeneratedValue//z主键类型
	private Integer id;
	
	@Column(name = "name", nullable = true,length=22)//标识数据库名称,是否为空,长度
	private String name;
	
	@Column(name = "age", nullable = true,length=22)
	private String age;
	
	@Column(name = "createtime", nullable = true,length=22)
	@DateTimeFormat
	private long createtime;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public long getCreatetime() {
		return createtime;
	}

	public void setCreatetime(long createtime) {
		this.createtime = createtime;
	}
	

5,控制器调用

@RestController//所有方法返回数据,但是不能返回html,jsp,若要返回html改成@Controller
public class TestController { 
 @RequestMapping("/test_update")
	public String update(Integer id){
		Test test = testService.getOne(id);//此方法是JpaRepository自带
		String a = test.getName();
		int num =testService.update("222",id);//此方法是自定义修改
//		test.setName("aaaaa");
//		test.setCreatetime(System.currentTimeMillis()/1000);
//		testService.save(test);
		Test test1 = testService.getOne(id);
		return a+"```"+test1.getName();
	}
}

6,启动SpringutilApplication.run方法

猜你喜欢

转载自blog.csdn.net/qq_34495753/article/details/83276656
今日推荐