spring-boot集成hsqldb

时间:2025-04-24 16:32:59

废话不多说,直接上代码

<!--
       spring boot 父节点依赖,
       引入这个之后相关的引入就不需要添加version配置,
       spring boot会自动选择最合适的版本进行添加。
     -->
    <parent>
       <groupId></groupId>
       <artifactId>spring-boot-starter-parent</artifactId>
       <version>1.3.</version>
    </parent> 
   
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
    </dependency>
   
    <!-- spring boot web支持:mvc,aop... -->
    <dependency>
       <groupId></groupId>
       <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
   
    <!-- spring data jpa -->
    <dependency>
       <groupId></groupId>
       <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
 
   
    <!-- 内存数据库hsqldb --> 
    <dependency>
        <groupId></groupId>
        <artifactId>hsqldb</artifactId>
        <scope>runtime</scope>
    </dependency>
   
  </dependencies>


启动

package ;

import ;
import ;

@SpringBootApplication
public class App {
	public static void main(String[] args) {
		(, args);
	}
}


实体

package ;

import ;
import ;
import ;

@Entity
public class Demo {
	@Id@GeneratedValue
	private Long id;
	private String name;
	private int age;
	
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		 = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		 = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		 = age;
	}
	
	
}


dao层

package ;

import ;

import ;

public interface DemoDao extends CrudRepository<Demo, Long>{
	Demo findByName(String name);
}


测试


package ;

import ;

import ;
import ;
import ;

import ;
import ;
 
@RestController
public class DemoController {
   
    @Autowired
    private DemoDao demoDao;
   
    @RequestMapping("save")
    public String save(){
       Demo demoInfo = new Demo();
       ("张三");
       (20);
       (demoInfo);
      
       demoInfo = new Demo();
       ("李四");
       (30);
       (demoInfo);
      
       return "ok";
    }
   
    @RequestMapping("find")
    public List<Demo> find(){
       return (List<Demo>) ();
    }
   
    @RequestMapping("findByName")
    public Demo findByName(){
       return ("张三");
    }
}


重要说明

以上配置项目关闭,数据则消失,添加以下配置到配置文件,可存入本地:

-sql = true
-auto = update
= jdbc\:hsqldb\:file\:D\:\\test\\testdb2
# = jdbc:h2:file:~/.h2/testdb
= sa
= sa
=


-sql = true 显示sql语句

-auto = update 这个必须加,每次启动对应实体