JEECG-自己用程式碼生成器生成的controller類是怎樣進行資料持久化的
unitInfoService的宣告方式是這個樣的:
- @Autowired
- private UnitInfoServiceI <span style="color:#ff0000;">unitInfoService</span>;
檢視UnitInfoServiceI介面,程式碼如下:
- package jeecg.gwc.db.service.unitinfo;
- import org.jeecgframework.core.common.service.CommonService;
-
publicinterface
- }
並沒有任何方法的宣告。
再看一下UnitInfoServiceI實現類UnitInfoServiceImpl的程式碼:
- package jeecg.gwc.db.service.impl.unitinfo;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
-
import jeecg.gwc.db.service.unitinfo.UnitInfoServiceI;
- import org.jeecgframework.core.common.service.impl.CommonServiceImpl;
- <span style="color:#ff0000;">@Service("unitInfoService")
- </span>@Transactional
- publicclass UnitInfoServiceImpl extends CommonServiceImpl implements UnitInfoServiceI {
- }
可以看到該類繼承了CommonServiceImpl(org.jeecgframework.core.common.service.impl.)類,實現了UnitInfoServiceI(jeecg.gwc.db.service.unitinfo.)介面
可以看到該類上方有個註解:@Service("unitInfoService") 括號裡的名稱跟Controller中service的變數名稱一致。所以應該是Spring將UnitInfoServiceImpl的物件注入到Controller類。
也就是用了UnitInfoServiceImpl的物件。
那麼這個物件中有什麼具體的方法嗎?
就要看繼承的CommonServiceImpl有哪些方法了。
看下CommonServiceImpl的具體原始碼:
- package org.jeecgframework.core.common.service.impl;
- import java.io.Serializable;
- import java.util.Collection;
- import java.util.List;
- import java.util.Map;
- import javax.annotation.Resource;
- import javax.servlet.http.HttpServletResponse;
- import jeecg.system.pojo.base.TSDepart;
- import org.hibernate.Session;
- import org.jeecgframework.core.common.dao.ICommonDao;
- import org.jeecgframework.core.common.hibernate.qbc.CriteriaQuery;
- import org.jeecgframework.core.common.hibernate.qbc.HqlQuery;
- import org.jeecgframework.core.common.hibernate.qbc.PageList;
- import org.jeecgframework.core.common.model.common.DBTable;
- import org.jeecgframework.core.common.model.common.UploadFile;
- import org.jeecgframework.core.common.model.json.ComboTree;
- import org.jeecgframework.core.common.model.json.DataGridReturn;
- import org.jeecgframework.core.common.model.json.ImportFile;
- import org.jeecgframework.core.common.model.json.TreeGrid;
- import org.jeecgframework.core.common.service.CommonService;
- import org.jeecgframework.tag.vo.datatable.DataTableReturn;
- import org.jeecgframework.tag.vo.easyui.Autocomplete;
- import org.jeecgframework.tag.vo.easyui.ComboTreeModel;
- import org.jeecgframework.tag.vo.easyui.TreeGridModel;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- @Service("commonService")
- @Transactional
- publicclass <span style="color:#ff0000;">CommonServiceImpl </span>implements CommonService {
- public ICommonDao commonDao = null;
- /**
- * 獲取所有資料庫表
- * @return
- */
- public List<DBTable> getAllDbTableName()
- {
- return commonDao.getAllDbTableName();
- }
- public Integer getAllDbTableSize() {
- return commonDao.getAllDbTableSize();
- }
- @Resource
- publicvoid setCommonDao(ICommonDao commonDao) {
- this.commonDao = commonDao;
- }
- @Override
- public <T> void save(T entity) {
- commonDao.save(entity);
- }
- @Override
- public <T> void saveOrUpdate(T entity) {
- commonDao.saveOrUpdate(entity);
- }
- @Override
- public <T> void delete(T entity) {
- commonDao.delete(entity);
- }
- /**
- * 刪除實體集合
- *
- * @param <T>
- * @param entities
- */
- public <T> void deleteAllEntitie(Collection<T> entities) {
- commonDao.deleteAllEntitie(entities);
- }
- /**
- * 根據實體名獲取物件
- */
- public <T> T get(Class<T> class1, Serializable id) {
- return commonDao.get(class1, id);
- }
- /**
- * 根據實體名返回全部物件
- *
- * @param <T>
- * @param hql
- * @param size
- * @return
- */
- public <T> List<T> getList(Class clas) {
- return commonDao.loadAll(clas);
- }
- /**
- * 根據實體名獲取物件
- */
- public <T> T getEntity(Class entityName, Serializable id) {
- return commonDao.getEntity(entityName, id);
- }
- /**
-
相關推薦
JEECG-自己用程式碼生成器生成的controller類是怎樣進行資料持久化的
unitInfoService的宣告方式是這個樣的: @Autowired private UnitInfoServiceI <span style="color:#ff0000;">unitInfoService</span>; 檢視
用Freemarker製作程式碼生成器生成mybatis.xml和java程式碼
一、外來鍵物件簡單封裝 @Setter @Getter public class AssociationObject { private String property; private String columnPrefix; private String jav
分享一下我的三個程式碼自動生成工具類--助你解放雙手
零、前言: 1.RecyclerView的Adapter自動生成器(含ViewHolder) 2.自定義屬性的自定義View程式碼生成器(含自定義屬性的初始化) 3.svg圖示轉換為Android可用xml生成器 最近喜歡切割字串,這三個類是近期的作品,感覺挺好用的,在此分享一下 三個工具
使用mybatis 程式碼生成器生成基礎的mapper ,model
程式碼生成器是由mybatis團隊開發提供的, 程式碼生產器通過配置可以生成不同型別的程式碼,程式碼包含了資料庫表對應的實體類,Mapper 介面類 ,mapper xml 檔案和example物件等,這些程式碼檔案幾乎包含了全部的單表操作。 當然對於聯表操作,還是需要自己書寫SQL 的
基於AgileEAS.NET SOA 中介軟體領域模型資料器快速打造自己的程式碼生成器
一、前言 AgileEAS.NET SOA 中介軟體平臺是一款基於基於敏捷並行開發思想和Microsoft .Net構件(元件)開發技術而構建的一個快速開發應用平臺。用於幫助中小型軟體企業建立一條適合市場快速變化的開發團隊,以達到節省開發成本、縮短開發時間,快速適應市場變化的目的。 A
Mybatis程式碼生成器生成的Example中的Criteria的使用,你會幾種?
1.查詢數量 AgentOmmissionExample example = new AgentOmmissionExample(); AgentOmmissionExample.Criteria c
使用mybatis-plus-gennretor程式碼生成器生成程式碼
1匯入需要的jar包 <dependencies> <!-- mp依賴 mybaits
Spring-Boot 使用 mybatis-plus-gennretor程式碼生成器生成程式碼+分頁外掛
程式碼自動生成器 1.匯入需要的jar包 <dependencies> <dep
程式碼隨機生成想要的資料
各位讀者,下午好啊,寡人小美。這裡簡單介紹一款工具類,自己隨機生成一些想要的資料,話不多說,直接上菜。 目錄 1、自己造資料 2、總結 1、自己造資料 這裡面用到了列舉,如果沒記錯的話,基礎課程列舉並不是重點,甚至會一掠而過。實際工作中,列舉多
Python 用凝聚層次聚類進行資料分組
本文主要參考《Python機器學習經典例項》 在介紹凝聚層次聚類之前,我們需要先理解層次聚類(hierarchical clustering)。層次聚類是一組聚類演算法,通過不斷地分解或合併叢集來構建樹狀叢集(tree-like clusters)。層次聚類的結構可以用
python機器學習之--用凝聚層次聚類進行資料分組
1.什麼是層次聚類def perfrom_clustering(X,connectivity,title,num_clusters=3,linkage='ward'): plt.figure() model = AgglomerativeClustering(
innerHTML動態生成table並進行資料填充
當我們需要動態生成table,並且這些資料沒有繫結到頁面中,只是一些臨時獲得的資料,那麼這個時候要將這些資料放到table中,jstl的實現方式肯定已經不行了,那麼這時候我們可以通過innerHTML
【JEECG-Mybatis版本】springmvc+mybatis+程式碼生成器(程式碼一鍵生成)
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
程式碼生成器——java程式碼自動生成MAVEN包和類檔案
package cn.ps; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import com.baomidou.mybatisplus.core.exceptions.Mybat
自己寫一個ORM框架-實現生成javabean檔案--也是一個程式碼生成器的實現
我自己實現了一遍:碼雲克隆地址:點選開啟連結 眾所周知,ORM框架有很多,例如Hibernate,MyBatis,還有BeetlSQL等等,裡面獲取有很多我們不需要的功能,本系列部落格主要教大家如何寫一個簡單的ORM框架 我們這次先講如何生成JavaBean程式碼
自制工具:CSV程式碼生成器:自動生成CSV檔案對應的C++實體類和欄位型別解析程式碼
更有開發效率地使用CSV檔案 為了更有效率地使用CSV檔案,我製作了一個工具:Code程式碼生成器。 這個工具可以對CSV檔案進行簡單地配置,自動生成這個CSV檔案對應的C++資料結構和欄位型別解析函式程式碼。 工程專案只要加入這些自動生成的程式碼,就可以更方便地使
【從零開始搭建自己的.NET Core Api框架】(三)集成輕量級ORM——SqlSugar:3.3 自動生成實體類
i++ 點運算 自己的 yui content project style ref 數據庫表 系列目錄 一. 創建項目並集成swagger 1.1 創建 1.2 完善 二. 搭建項目整體架構 三. 集成輕量級ORM框架——SqlSugar 3.1 搭建環境
用程式碼來解釋可迭代性,迭代器,生成器的區別
一. 創造器(creator) 這是我自己造的一個名詞,因為在python術語中,對只實現了__next__()方法的物件,好像沒有任何名分,為了說明,我將只實現了__next__()方法的物件稱為創造器(creator)。 class O_Next: def __init__(se
MyBatis-Plus程式碼生成器,根據表名生成各個模組的程式碼
根據表名生成Entity、Mapper、Mapper XML、Service、Controller 等各個模組的程式碼,程式碼如下(根據官網demo修改的),可以正常執行 package com; import com.baomidou.mybatisplus.annotation.DbTyp
利用mybatis-generator自動生成程式碼-表對應的類和配置檔案
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configu