我是小白,记录遇到的小技巧
分页也可以这样写
Head
<script th:inline="javascript">
$(function() {
$.jgrid.no_legacy_api = true;
$.jgrid.useJSON = true;
$("#grid").jqGrid({
datatype: 'local',
height: '410',
multiselect: true,
rowNum: 10, //一页显示多少行
rowList: [10,20,30],
colNames:['你的名字', '我记得', '你', '还好吗',''],
colModel:[
{ name: 'nidminzi' , index: 'nidminzi' , editable:true },
{ name: 'wowow' , index: 'wowow' , editable:true},
{ name: 'you' , index: 'you' , editable:true},
{ name: 'okok' , index: 'okok' , editable:true},
{ name: 'hymd' , index: 'hymd' , editable:true,hidden:true},
],
pager: '#pager',
viewrecords: true,
loadComplete : function () {
// 設定宽
// $("#grid").jqGrid('setGridWidth', $(table_width).width(), true);
setGridWidth();
$(".jqg-first-row-header").hide();
// 添加一列选择框
$("#grid_cb").find('div').html('該当');
$("#grid_cb").find('div').width(200)
},
// 此时是双击场合、单击场合使用:onSelectRow
ondblClickRow: function(rowId) {
var rowId = $("#" + this.id).getGridParam('selrow');
var rowData = $("#grid").getRowData(rowId);
$("#del").attr("disabled", false);
/* var rowData = jQuery(this).getRowData(rowId);
var koho_bng = rowData['koho_bng'];
var hymd = rowData['hymd'];
$("#hymd").val(hymd);
$("#kohoBng").val(koho_bng);
$("#delBtn").attr('disabled',false); */
}
});
$('tr.ui-jqgrid-labels th div') .draggable({
appendTo: 'body',
helper: 'clone'
});
// 一页显示的宽高
$(window).bind('resize', function(){
$('#grid').setGridWidth($(table_width).width());
$('#grid').setGridHeight(391);
}).trigger('resize');
function getData(){
var csrfToken = $("[name='_csrf']").val();
$.ajax({
url:"getData",
dataType:"json",
async:true,
type:"post",
data:{
// 传值需要填写
"_csrf":csrfToken
},
success:function(data){
for ( var i = 0; i <= data.length; i++){
$('#grid').jqGrid('addRowData', i + 1, data[i]);
}
$('#grid').jqGrid('setGridParam', {rownum:10}).trigger("reloadGrid");
}
});
}
</script>
Body
<div class="margin-sm">
<div id="table_width" class="accordion-reult-table resize"
style="width: 100%; height: 100%">
<table id="grid"></table>
<table id="pager"></table>
</div>
</div>
Service
@Autowired
JinkyuCmnService jinkyuCmnService;
@Autowired// 走向xml调用数据库SQL
Repository pssSyokinnoRepository;
@Autowired
TABLEService<?> y2010SQLTABLEService;
@Autowired
Mapper beanMapper;
public List<OutDto> init(String phymd_s,
String phymd_e) {
Map<String, Object> condition = new HashMap<String, Object>();
condition.put(Y2010SQLTABLEService.FRM_NAME, "SQL名");
condition.put(Y2010SQLTABLEService.SQLID, 1);
condition.put("参数名", 参数);// "20190101"
condition.put("参数名", 参数);// "20190101"
List<Map<String, Object>> mapList = y2010SQLTABLEService.getY2010ListResult(condition);
List<OutDto> list = mapToOject(mapList,
OutDto.class);
// 日期取值不要00:00:00、“-”变“/”
for (OutDto e : list) {
if (StringUtils.isNotEmpty(e.getSfuy_hymd())) {
e.setSfuy_hymd(e.getSfuy_hymd().replace("-", "/").substring(0, 10));
}
}
return list;
}
Controller
@Autowired
ShkService service;
// 初期表示
@RequestMapping("")
public ModelAndView init(@ModelAttribute TrkForm form) {
request.getSession(true);
ModelAndView mav = new ModelAndView();
mav.addObject(FORM_NAME, form);
mav.setViewName(VIEWConstants.VIEW_039);
String standardDate = cmnService.getStandardDate();
form.setPkijunYmd(standardDate);
// 採用年度
form.setSaiymdNen(standardDate);
// 表示上限
form.setHyojiJougen(cmnService.getDNJOH_NAIYO("职员搜索件数制限"));
form.setHyojiJougenChk("1");
// a写真表示
form.setImageD(cmnService.getDNJOH_NAIYO("写真表示有無"));
return mav;
}
/**
*getData
*
* @return grid
*/
@ResponseBody
@RequestMapping(value = "getData", method = RequestMethod.POST)
public JSONArray getData(String henkoNengappiSt, String henkoNengappiEd) {
// 显示列表取得
System.out.println(henkoNengappiSt + "==" + henkoNengappiEd);
if (StringUtils.isEmpty(henkoNengappiSt)) {
henkoNengappiSt = null;
}
if (StringUtils.isEmpty(henkoNengappiEd)) {
henkoNengappiEd = null;
}
List<OutDto> kenSaKu = service
.init(henkoNengappiSt, henkoNengappiEd);
return JSONArray.fromObject(kenSaKu);
}
TABLEService类
@Service
public class Y2010SQLTABLEService<Entity> {
/** sql搜素条件: frmname */
public static final String FRM_NAME = "frmname";
/** sql搜素条件: SQLID */
public static final String SQLID = "SQLID";
/** sql搜素条件: SQLCODE */
public static final String SQLCODE = "SQLCODE";
@Autowired
Y2010SQLTABLERepository<?> y2010SQLTABLERepository;
/**
*
*
* @param map 搜素条件
* @return List
*
*/
public List<Map<String, Object>> getY2010ListResult(Map<String, Object> map) {
String sql = y2010SQLTABLERepository.getSQL(String.valueOf(map.get(FRM_NAME)), (Integer) map.get(SQLID));
if (sql == null)
return null;
String newSQL = StringUtils.EMPTY;
try {
newSQL = new String(sql.getBytes(), "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
map.put(SQLCODE, newSQL);
return y2010SQLTABLERepository.getY2010ListResult(map);
}
/**
*
*
* @param map 搜素条件
* @return List
*
*/
public List<Map<String, Object>> getY2010ListSpecialResult(Map<String, Object> map) {
String sql = y2010SQLTABLERepository.getSQL(String.valueOf(map.get(FRM_NAME)), (Integer) map.get(SQLID));
String newSQL = StringUtils.EMPTY;
try {
newSQL = new String(sql.getBytes(), "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
for (String key : map.keySet()) {
Object value = (Object) map.get(key);
newSQL = newSQL.replace("${" + key + "}", String.valueOf(value));
}
map.put(SQLCODE, newSQL);
return y2010SQLTABLERepository.getY2010ListResult(map);
}
/**
*
*
* @param map 搜素条件
* @return Map
*
*/
public Map<String, Object> getY2010ObjectResult(Map<String, Object> map) {
String sql = y2010SQLTABLERepository.getSQL(String.valueOf(map.get(FRM_NAME)), (Integer) map.get(SQLID));
map.put(SQLCODE, sql);
return y2010SQLTABLERepository.getY2010ObjectResult(map);
}
/**
*
*
* @param map 搜素条件
* @return Map
*
*/
public Map<String, Object> getY2010ObjectSpecialResult(Map<String, Object> map) {
String sql = y2010SQLTABLERepository.getSQL(String.valueOf(map.get(FRM_NAME)), (Integer) map.get(SQLID));
for (String key : map.keySet()) {
String value = String.valueOf(map.get(key));
sql = sql.replace("${" + key + "}", value);
}
map.put(SQLCODE, sql);
return y2010SQLTABLERepository.getY2010ObjectResult(map);
}
}
OutDto定义画面输出的字段名,InDto定义画面输入的值。
在画面点击操作的时候:service取出数据 --> html --> controller (用inDto.set(form.get())) --> service取得 --> Repository(接口) --> Repository.xml