`

MYSQL-JAP-CRUD

 
阅读更多
简单的CRUD
确保配置好mysql-conntor 和 jpa 的依赖。
并在本地创建对应数据库!

http://784838898.iteye.com/admin/blogs/2390284


项目启动后会老一套的正向生成DB TABLE。

Step 1:

     创建用于测试CRUD的JAVA-BEAN  [Person] ,
           随便写几个Field 添加 G+S Method 及无参Constructor.

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class Person {

	@Id
	@GeneratedValue
	private Integer id;
	private String nickName;
	private String gender;
	
	
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getNickName() {
		return nickName;
	}
	public void setNickName(String nickName) {
		this.nickName = nickName;
	}
	public String getGender() {
		return gender;
	}
	public void setGender(String gender) {
		this.gender = gender;
	}
	public Person() {
		 
	}
	
}


需标注@Entity
@Id
@GeneratedValue
此处代表PrimaryKey自增长序列


-------------------------------------------------------------------------------

添加数据持久化接口类
[PersonRepository.java]

import org.springframework.data.jpa.repository.JpaRepository;

import com.demo.bean.Person;

public interface PersonRepository extends JpaRepository<Person,Integer> {

	
}





这里的PersonRepository接口实现了JpaRepository接口;

实际上JpaRepository实现了PagingAndSortingRepository接口,PagingAndSortingRepository接口实现了CrudRepository接口,CrudRepository接口实现了Repository接口;

说明:

Repository接口是一个标识接口,里面是空的

CrudRepository接口定义了增删改查方法

PagingAndSortingRepository接口用于分页和排序

由于JpaRepository接口继承了以上所有接口,所以拥有它们声明的所有方法

以findAll方法为例,JpaRepository接口返回的是List, PagingAndSortingRepository和CrudRepository返回的是迭代器!








简单的增删改查在Controller中如下

        @Autowired
	private PersonRepository personRepository ;
	
	/**
	 * findAll
	 *  
	 */
	@GetMapping(value = "/persons")
	public List<Person> personList(){
		 
		return personRepository.findAll();
	}
	/**
	 * findOne
	 *  
	 */
	@GetMapping(value = "/persons")
	public Person personById(){
		return personRepository.findOne(1);
	}
	
	/**
	 * Add Person / Update Person IF PK EXSITS
	 * @param name
	 * 
	 */
	@GetMapping(value = "/personAdd")
	public Person addPerson(@RequestParam("name") String name){
		
		Person person = new Person();
		person.setName(name);
		
		return personRepository.save(person);
	}
	
	@GetMapping(value = "/personRemove")
	public String removePerson(@RequestParam("id") String id){
		personRepository.delete(Integer.parseInt(id));
		return "success";
	}





家里尽量模块化规范。



  +- PorjectRoot
    
     +- domain
     |  +- Person.java
     |
     +- service
       +-impl
     |  +- PersonService.java     
     | +- PersonRepository.java
     +- web
     |  +- PersonController.java
     |



分享到:
评论

相关推荐

    matlab心线代码-cpmodel-jap:心肺模型-JAP2020-Karamolegkos,Albanese,Chbat

    cpm_jap_R2019a.slx :Matlab R2019a或更高版本的主Simulink文件(请注意,“ R2017b”文件可用于R2017b之后的所有Matlab版本,但建议使用较新的版本以实现更好的兼容性) CP_sf.mexw64 :修改后的CP模型的编译代码...

    Descubre-de-Jap-n-:在日本游戏中度日,在日本的aprenderássobre su turismo,文化,动漫

    【标题】:“Descubre-de-Japón:在日本游戏中学习,探索日本的旅游、文化与动漫” 这个项目似乎是一个关于日本文化的互动平台,结合了游戏、旅游、文化和动漫元素,为用户提供了深入了解日本的途径。从“Descubre...

    eBusca:eBusca,在Proyecto Final上的基本材料,在Paraguay的专业技术中心-Japón。 巴拉圭巴士总公司和行政长官之间的联系

    在项目中,可能使用了NoSQL数据库如MongoDB,或者关系型数据库如MySQL,来存储和管理巴士服务的相关数据。JavaScript可以通过ORM(对象关系映射)工具,如Sequelize或Mongoose,方便地与数据库进行交互。 【响应式...

    jsp连接MySQL用连接池方式步骤

    ### JSP连接MySQL使用连接池方式详解 #### 一、引言 在现代Web开发中,JSP(Java Server Pages)是一种广泛使用的服务器端技术,用于生成动态网页内容。为了提高应用程序的性能和效率,通常会采用连接池来管理与...

    jap-master.zip

    在"jap-master"压缩包中,包含了JAP项目的源代码和相关配置文件。开发者可以通过阅读源码了解其实现细节,或者直接编译部署。部署JAP通常涉及以下步骤:配置认证模块、设置数据库连接、部署服务以及调整安全策略。...

    jap.rar_jap简单教程

    【标题】"jap.rar_jap简单教程"指的是一个关于JAP(可能是Java Application Project)的压缩包资源,其中包含了学习和理解JSP(JavaServer Pages)基础应用的材料。这个教程面向的是初学者,旨在帮助他们入门Web开发...

    jpa-spec一个JAP查询规范框架

    jpa-spec 在Spring Data JPA之上做扩展,支持原生JPA2规范,极大的简化动态查询语法。 特性 兼容JPA2规范 Equal/NotEqual/Like/In 支持多个参数, Equal/NotEqual 支持Null 值.

    JAP 简介 入门知识

    JAP 简介 入门知识

    网络在线考试jap+struts

    网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts网络在线考试jap+struts

    JAVA JAP分页写法大全

    1. **JDBC基础分页**:使用SQL的`LIMIT`和`OFFSET`(MySQL)或`ROWNUM`(Oracle)等关键字实现分页。但这种方式效率较低,因为`OFFSET`会跳过很多行,当页数增大时,性能下降明显。 2. **JPA(Java Persistence API...

    jap+hibernate4实现

    5. **使用Repository**:在业务逻辑层,你可以通过依赖注入的方式使用上述DAO,执行CRUD操作。 6. **事务管理**:对于Java EE应用,你可以使用容器管理的事务;在Java SE应用中,需要手动配置事务管理,如使用`...

    jap网络通讯录addressBook

    《jap网络通讯录addressBook》是一款专为网络通信设计的高效管理工具,它整合了传统的通讯录功能并拓展到了互联网环境中,使用户能够轻松管理和分享自己的联系人信息。在这个数字化时代,有效的通信管理至关重要,而...

    jpa jsf crud

    在**JPA和JSF集成进行CRUD操作**时,通常会利用JSF的后台Bean(Managed Bean)来处理业务逻辑,而JPA则负责数据库交互。CRUD代表创建(Create)、读取(Retrieve)、更新(Update)和删除(Delete)这四种基本的数据操作。 ...

    J.A.C.S:Jap Apparels Pvt的SoftwareWeb项目。 有限公司,以帮助进行成本核算和维护清洁记录

    联合会Jap Apparels Pvt的软件/ Web项目。 有限公司,以帮助进行成本核算和维护清洁记录项目类型-Web项目商号-Jap Apparels Pvt。 有限公司系统详情软件功能计算订单的总成本。 根据所选类别(名称,类型等)显示...

    jap网上书店课程设计

    可能还会用到HTML、CSS和JavaScript进行前端页面设计,以及数据库技术如MySQL存储数据。UML(统一建模语言)工具,如Visio或Enterprise Architect,用来绘制用况图、顺序图和类图,以可视化地表示系统组件和交互。 ...

    jap+sturs教材管理系统

    在数据库层面,系统可能使用了关系型数据库如MySQL或Oracle来存储教材信息,包括教材名称、作者、出版社、库存等数据。这些数据库连接和操作通常通过Java的JDBC(Java Database Connectivity)API来实现,使得应用...

    struts 2.1.8 spring 2.5 jap ext 整合 例子2

    struts 2.1.8 spring 2.5 jap ext 整合 例子 struts 2.1.8 spring 2.5 jap ext 整合 例子

    java 动态菜单 jap vs html

    标题中提到的"jap"可能是Java Applet的缩写,这是一种早期的Java技术,用于在HTML页面中嵌入可执行的Java代码。Java Applet可以用于创建动态菜单,但由于安全性问题和现代浏览器对Applet的支持逐渐减少,这种方式已...

    JPA环境支持(JAP的环境配置)

    &lt;property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/test"/&gt; &lt;/persistence-unit&gt; ``` #### 五、常见问题及解决方案 ##### 1. 类型转换错误 - **原因**:可能是实体...

Global site tag (gtag.js) - Google Analytics