基于Spring Boot的校园资产管理系统
为了创建一个简单的校园资产管理系统,我们可以定义一些基本的资产实体和服务。以下是一个简化的例子:
// Asset.java
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Asset {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
private String description;
private String serialNumber;
// 省略getter和setter方法
}
// AssetRepository.java
import org.springframework.data.jpa.repository.JpaRepository;
public interface AssetRepository extends JpaRepository<Asset, Long> {
// Spring Data JPA 自动生成的方法会在这里
}
// AssetService.java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class AssetService {
@Autowired
private AssetRepository assetRepository;
public List<Asset> getAllAssets() {
return assetRepository.findAll();
}
public Asset getAssetById(Long id) {
return assetRepository.findById(id).orElse(null);
}
public Asset createAsset(Asset asset) {
return assetRepository.save(asset);
}
public Asset updateAsset(Long id, Asset asset) {
Asset existingAsset = assetRepository.findById(id).orElseThrow(() -> new RuntimeException("Asset not found"));
existingAsset.setName(asset.getName());
existingAsset.setDescription(asset.getDescription());
existingAsset.setSerialNumber(asset.getSerialNumber());
return assetRepository.save(existingAsset);
}
public void deleteAsset(Long id) {
Asset asset = assetRepository.findById(id).orElse(null);
if (asset != null) {
assetRepository.delete(asset);
}
}
}
// AssetController.java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/assets")
public class AssetController {
@Autowired
private AssetService assetService;
@GetMapping
public List<Asset> getAllAssets() {
return assetService.get
评论已关闭