Gradle创建Spring Boot项目——2JPA

简介: Gradle创建Spring Boot项目

Entity

package com.wuti.Entity;

import javax.persistence.*;
import java.io.Serializable;

/**
 * Created by wtrover on 2017/6/23.
 */
@Entity
@Table(name = "city")
public class City implements Serializable {

    @Id
    @Column(name = "id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    private String name;
    private String codeName;
    private String state;
    private String country;

    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getCountry() {
        return country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public String getCodeName() {
        return codeName;
    }

    public void setCodeName(String codeName) {
        this.codeName = codeName;
    }
}
Dao
package com.wuti.Dao;

import com.wuti.Entity.City;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

/**
 * Created by wtrover on 2017/6/23.
 */
@Repository
public interface CityRepository extends JpaRepository<City, Integer> {

    //通过id查询
    City findById(int id);

    //通过名称查询
    City findByName(String name);

    //通过代号查询
    City findByCodeName(String codeName);
}
Service
package com.wuti.Service;

import com.wuti.Entity.City;

/**
 * Created by wtrover on 2017/6/23.
 */
public interface CityService {

    //通过id查询
    City findById(int id);

    //通过名称查询
    City findByName(String name);

    //通过代号查询
    City findByCodeName(String codeName);

    //添加一座城市
    City add(String name,String codeName,String state,String country);

    //更新一座城市
    City update(int id,String name,String codeName,String state,String country);

    //删除一座城市
    void delete(int id);

    //删除一座城市
    void delete(City city);
}
________________________________________________________________________


package com.wuti.Service;

import com.wuti.Dao.CityRepository;
import com.wuti.Entity.City;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * Created by wtrover on 2017/6/23.
 */
@Service(value = "CityService")
public class CityServiceImpl implements CityService {
    @Autowired
    private CityRepository cityRepository;

    @Override
    public City findById(int id) {
        return cityRepository.findById(id);
    }
    @Override
    public City findByName(String name) {
        return cityRepository.findByName(name);
    }
    @Override
    public City findByCodeName(String codeName) {
        return cityRepository.findByCodeName(codeName);
    }
    @Override
    public City add(String name, String codeName, String state, String country) {
        City city = new City();
        city.setName(name);
        city.setCodeName(codeName);
        city.setState(state);
        city.setCountry(country);
        return cityRepository.save(city);
    }
    @Override
    public City update(int id,String name,String codeName, String state,String country) {
        City city = new City();
        city.setId(id);
        city.setName(name);
        city.setCodeName(codeName);
        city.setState(state);
        city.setCountry(country);
        return cityRepository.save(city);
    }
    @Override
    public void delete(int id) {
        cityRepository.delete(id);
    }
    @Override
    public void delete(City city) {
        cityRepository.delete(city);
    }
}
Controller
package com.wuti.Controller;

import com.wuti.Entity.City;
import com.wuti.Service.CityService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created by wtrover on 2017/6/23.
 */
@RestController
@RequestMapping(value = "city/")
public class CityController {

    @Autowired
    private CityService cityService;

    /**
     * 添加一座城市
     * @param name
     * @param codeName
     * @param state
     * @param country
     * @return
     */
    @PostMapping(value = "add")
    public City cityAdd(@RequestParam("name") String name,
                            @RequestParam(value = "codeName", required = false, defaultValue = "") String codeName,
                            @RequestParam(value = "state", required = false, defaultValue = "0") String state,
                            @RequestParam("country") String country) {
        return cityService.add(name,codeName,state,country);
    }

    /**
     * 更新一座城市
     * @param id
     * @param name
     * @param codeName
     * @param state
     * @param country
     * @return
     */
    @PostMapping(value = "update")
    public City cityUpdate(@RequestParam("id") Integer id,
                        @RequestParam("name") String name,
                        @RequestParam(value = "codeName", required = false, defaultValue = "") String codeName,
                        @RequestParam(value = "state", required = false, defaultValue = "0") String state,
                        @RequestParam("country") String country) {
        return cityService.update(id,name,codeName,state,country);
    }

    /**
     * 删除一座城市
     * @param id
     */
    @PostMapping(value = "delete")
    public void cityDelete(@RequestParam("id") Integer id) {
        cityService.delete(id);
    }

}


相关文章
|
7天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
14天前
|
Java API Spring
SpringBoot项目调用HTTP接口5种方式你了解多少?
SpringBoot项目调用HTTP接口5种方式你了解多少?
57 2
|
14天前
|
前端开发 JavaScript Java
6个SpringBoot 项目拿来就可以学习项目经验接私活
6个SpringBoot 项目拿来就可以学习项目经验接私活
28 0
|
18天前
|
Java 应用服务中间件 Maven
SpringBoot 项目瘦身指南
SpringBoot 项目瘦身指南
37 0
|
26天前
|
前端开发 Java 关系型数据库
SpringBoot+MyBatis 天猫商城项目
SpringBoot+MyBatis 天猫商城项目
47 1
|
28天前
|
JSON JavaScript 前端开发
解决js中Long类型数据在请求与响应过程精度丢失问题(springboot项目中)
解决js中Long类型数据在请求与响应过程精度丢失问题(springboot项目中)
31 0
|
17天前
|
Java Maven 微服务
springboot项目开启远程调试-jar包
springboot项目开启远程调试-jar包
16 0
|
27天前
|
SpringCloudAlibaba Java 持续交付
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
121 0
|
7天前
|
JSON 前端开发 Java
Springboot前后端分离项目统一封装返回结果
Springboot前后端分离项目统一封装返回结果
|
24天前
|
Java 测试技术 API
云效流水线构建gradle项目失败提示gradle版本过低如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
27 0