1.action的写法

开头写包,此外,我们还有一个和action并列的package-info.java的文件,该文件是包的信息,media为我的文件夹里面放三个文件夹(action,bpo,mapper)

@org.apache.struts2.convention.annotation.Namespace("/media")
package com.****.***.media.action;

package com.****.***.media.action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.apache.struts2.convention.annotation.Action;

import com.****.***.common.web.BaseAction;//导入基本的baseaction文件
import com.****.***.media.bpo.MediaManageBPO;//导入bpo
public class MediaManageAction extends BaseAction {//继承基本的baseaction

然后在类中写

private static final long serialVersionUID = 3791581176290177353L;

private String MEDIA_ID;//一般是和数据库对应的字段
private String MEDIA_NAME;
private String MEDIA_DOMAIN;
private String MEDIA_TYPE;

@Resource
private MediaManageBPO mediaManageBPO;

/**
* 获取所有数据库中媒体的信息
* @return
*/
@Action(value="getMediaInfo")
public String getMediaInfo(){
//定义一个列表,列表中保存多个map对象
List<Map<String,Object>> rsList = new ArrayList<Map<String,Object>>();
rsList = mediaManageBPO.getMediaInfo();
outputJson(rsList);
return NONE;
}


/**
* 查询数据库中媒体的信息
* @return
*/
@Action(value="searchMediaInfo")
public String searchMediaInfo(){
//定义一个map,保存多个键值对
Map<String,Object> argMap = new HashMap<String,Object>();
argMap.put("MEDIA_ID", MEDIA_ID);
argMap.put("MEDIA_NAME", MEDIA_NAME);
argMap.put("MEDIA_DOMAIN", MEDIA_DOMAIN);
argMap.put("MEDIA_TYPE", MEDIA_TYPE);
//定义一个列表,列表中保存多个map对象
List<Map<String,Object>> rsList = new ArrayList<Map<String,Object>>();
rsList = mediaManageBPO.searchMediaInfo(argMap);
outputJson(rsList);
return NONE;
}


/**
* 添加数据库中媒体的信息
* @return
*/
@Action(value="addMediaInfo")
public String addMediaInfo(){
//定义一个map,保存多个键值对
Map<String,Object> argMap = new HashMap<String,Object>();
argMap.put("MEDIA_ID", MEDIA_ID);
argMap.put("MEDIA_NAME", MEDIA_NAME);
argMap.put("MEDIA_DOMAIN", MEDIA_DOMAIN);
argMap.put("MEDIA_TYPE", MEDIA_TYPE);
//定义一个列表,列表中保存多个map对象
mediaManageBPO.addMediaInfo(argMap);
outputString("SUCCESS");
return NONE;
}


/**
* 删除数据库中媒体的信息
* @return
*/
@Action(value="removeMediaInfo")
public String removeMediaInfo(){
//定义一个map,保存多个键值对
Map<String,Object> argMap = new HashMap<String,Object>();
argMap.put("MEDIA_ID", MEDIA_ID);
argMap.put("MEDIA_NAME", MEDIA_NAME);
argMap.put("MEDIA_DOMAIN", MEDIA_DOMAIN);
argMap.put("MEDIA_TYPE", MEDIA_TYPE);
//定义一个列表,列表中保存多个map对象
mediaManageBPO.removeMediaInfo(argMap);
outputString("SUCCESS");
return NONE;
}


/**
* 修改数据库中媒体的信息
* @return
*/
@Action(value="editMediaInfo")
public String editMediaInfo(){
//定义一个map,保存多个键值对
Map<String,Object> argMap = new HashMap<String,Object>();
argMap.put("MEDIA_ID", MEDIA_ID);
argMap.put("MEDIA_NAME", MEDIA_NAME);
argMap.put("MEDIA_DOMAIN", MEDIA_DOMAIN);
argMap.put("MEDIA_TYPE", MEDIA_TYPE);
//定义一个列表,列表中保存多个map对象
mediaManageBPO.editMediaInfo(argMap);
outputString("SUCCESS");
return NONE;
}


public String getMEDIA_ID() {
return MEDIA_ID;
}

public void setMEDIA_ID(String mEDIA_ID) {
MEDIA_ID = mEDIA_ID;
}

public String getMEDIA_NAME() {
return MEDIA_NAME;
}

public void setMEDIA_NAME(String mEDIA_NAME) {
MEDIA_NAME = mEDIA_NAME;
}

public String getMEDIA_DOMAIN() {
return MEDIA_DOMAIN;
}

public void setMEDIA_DOMAIN(String mEDIA_DOMAIN) {
MEDIA_DOMAIN = mEDIA_DOMAIN;
}

public String getMEDIA_TYPE() {
return MEDIA_TYPE;
}

public void setMEDIA_TYPE(String mEDIA_TYPE) {
MEDIA_TYPE = mEDIA_TYPE;
}

2.写bpo

@Resource
MediaManageMapper mediaManageMapper;

//获取媒体信息
public List<Map<String, Object>> getMediaInfo() {
return mediaManageMapper.getMediaInfo();
}

//查询媒体信息
public List<Map<String, Object>> searchMediaInfo(Map<String, Object> argMap) {
return mediaManageMapper.searchMediaInfo(argMap);
}

//添加媒体信息
public void addMediaInfo(Map<String, Object> argMap) {
mediaManageMapper.addMediaInfo(argMap);
}

//删除媒体信息
public void removeMediaInfo(Map<String, Object> argMap) {
mediaManageMapper.removeMediaInfo(argMap);
}

//修改媒体信息
public void editMediaInfo(Map<String, Object> argMap) {
mediaManageMapper.editMediaInfo(argMap);
}

3.写mapper

(mapper中定义接口,getMediaInfo()和searchMediaInfo()方法有返回值,后面的三个方法没有返回值)

public interface MediaManageMapper {

//获取媒体信息
List<Map<String, Object>> getMediaInfo();

//查询媒体信息
List<Map<String, Object>> searchMediaInfo(Map<String, Object> argMap);

//添加媒体信息
void addMediaInfo(Map<String, Object> argMap);

//删除媒体信息
void removeMediaInfo(Map<String, Object> argMap);

//修改媒体信息
void editMediaInfo(Map<String, Object> argMap);
}

4.写xml(mybatis中的sql语句)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!-- 引入mapper namespace-->
<mapper namespace="com.****.***.media.mapper.MediaManageMapper">

<!-- SQL查询语句 ,获取表的所有内容-->

<select id="getMediaInfo" parameterType="map" resultType="map">
select t.* from wpgl.wp_assess_media t
</select>

<!-- SQL查询语句 ,查询表的内容-->
<select id="searchMediaInfo" parameterType="map" resultType="map">
select t.* from wpgl.wp_assess_media t
<where>
<if test="MEDIA_ID!=null and MEDIA_ID!=''">
t.MEDIA_ID = #{MEDIA_ID}
</if>
<if test="MEDIA_NAME!=null and MEDIA_NAME!=''">
and t.MEDIA_NAME = #{MEDIA_NAME}
</if>
<if test="MEDIA_DOMAIN!=null and MEDIA_DOMAIN!=''">
and t.MEDIA_DOMAIN = #{MEDIA_DOMAIN}
</if>
<if test="MEDIA_TYPE!=null and MEDIA_TYPE!=''">
and t.MEDIA_TYPE = #{MEDIA_TYPE}
</if>
</where>
</select>

<!-- SQL插入语句 ,输入输出参数类型都定义为map类型-->

<insert id="addMediaInfo" parameterType="map" >
insert into wpgl.wp_assess_media t (t.MEDIA_ID,t.MEDIA_NAME,t.MEDIA_DOMAIN,t.MEDIA_TYPE)
values(#{MEDIA_ID},#{MEDIA_NAME},#{MEDIA_DOMAIN},#{MEDIA_TYPE})
</insert>


<!-- SQL删除语句 ,输入输出参数类型都定义为map类型-->

<delete id="removeMediaInfo" parameterType="map" >
delete from wpgl.wp_assess_media t
<where>
<if test="MEDIA_NAME!=null and MEDIA_NAME!=''">
t.MEDIA_NAME = #{MEDIA_NAME}
</if>
</where>
</delete>

<!-- SQL修改语句 ,输入输出参数类型都定义为map类型-->

<update id="editMediaInfo" parameterType="map" >
update wpgl.wp_assess_media t
<set>
<if test="MEDIA_NAME!=null and MEDIA_NAME!=''">
t.MEDIA_NAME = #{MEDIA_NAME} ,
</if>
<if test="MEDIA_DOMAIN!=null and MEDIA_DOMAIN!=''">
t.MEDIA_DOMAIN = #{MEDIA_DOMAIN} ,
</if>
<if test="MEDIA_TYPE!=null and MEDIA_TYPE!=''">
t.MEDIA_TYPE = #{MEDIA_TYPE}
</if>
</set>
<where>
<if test="MEDIA_ID!=null and MEDIA_ID!=''">
t.MEDIA_ID = #{MEDIA_ID}
</if>
</where>

</update>

</mapper>

datagrid---写后台数据交互的更多相关文章

  1. MUI框架-09-MUI 与后台数据交互

    MUI框架-09-MUI 与后台数据交互 本篇介绍使用 art-template 和原生 MUI 的数据交互 mui.ajax 来实现 我们大家都知道,想要数据交互就要有数据,每次当我们发送请求,我们 ...

  2. --@angularJS--自定义服务与后台数据交互小实例

    1.myService.html: <!DOCTYPE HTML><html ng-app="app"><head>    <title& ...

  3. --@angularJS--$http服务与后台数据交互

    1.httpBasic.html: <!DOCTYPE HTML><html ng-app="app"><head>    <title& ...

  4. AntDesign(React)学习-10 Dva 与后台数据交互

    明天正式在线办公没时间学习了,今天晚上再更新一篇, 代码提交一次:https://github.com/zhaogaojian/jgdemo 1.src下创建services目录 创建文件userSr ...

  5. vue-cli模拟后台数据交互

    作为一个前端入坑的妹子,在学习vue的道路上挣扎徘徊,由一开始的对vue一直蒙圈只知道双向数据绑定和一些'V-x'的指令,慢慢通过一个视频的学习渐渐入坑,对于我这个js基础不怎么好而且编程思维又不是很 ...

  6. web前端与后台数据交互

    1.前端请求数据URL由谁来写? 在开发中,URL主要是由后台来写的,写好了给前端开发者.如果后台在查询数据,需要借助查询条件才能查询到前端需要的数据时,这时后台会要求前端提供相关的查询参数,这里的查 ...

  7. 使用Jquery.AJAX方法和PHP后台数据交互小结

    使用jQuery的AJAX方法和后台PHP进行数据交互,交互采用的数据格式JSON格式. 我主要小小的总结了一下,我使用AJAX方法时候遇到一些小小的问题. 第一:在传递数据的时候,传输地址注意是否正 ...

  8. js前台与后台数据交互-前台调后台

    转自:http://blog.csdn.net/wang379275614/article/details/17033981   网站是围绕数据库来编程的,以数据库中的数据为中心,通过后台来操作这些数 ...

  9. 在ssm框架中前后台数据交互均使用json格式

    前后台数据交互均使用json. 框架ssm(spring+springmvc+mybatis) @RequestBody注解实现接收http请求的json数据,将json数据转换为java对象,注解加 ...

  10. 【前端统计图】hcharts实现堆叠柱形图(与后台数据交互)

    原型图类似如下: 图片.png <!DOCTYPE > <html> <head> <meta charset="utf-8">&l ...

随机推荐

  1. 【Android 开发】: Android 消息处理机制之一: Handler 与 Message

    最近几讲内容,我们学习了Android中关于多线程的一些知识,上一讲我们讲解了异步任务 AsyncTask 的操作,Android中还提供了其他的线程操作,如Handler Message Messa ...

  2. Android下的数据储存方式( 二)

    在上一篇文章中我们介绍了SharedPreferences的使用方法. 今天我们继续介绍另一种储存数据的方式:使用内部储存和外部储存 每一个Android设备都拥有两个数据储存区域:外部储存和外部储存 ...

  3. oracle数据泵实现不同用户之间的导出导入

    来源于:http://www.cnblogs.com/kevinsun/archive/2007/02/03/638803.aspx http://blog.sina.com.cn/s/blog_68 ...

  4. Query DSL for elasticsearch Query

    Query DSL Query DSL (资料来自: http://www.elasticsearch.cn/guide/reference/query-dsl/) http://elasticsea ...

  5. Swift基础--Swift中的异常处理

    Swift中的异常处理 OC中的异常处理:方法的参数要求传入一个error指针地址,方法执行完后,如果有错误,内部会给error赋值 Swift中的异常处理:有throws的方法,就要try起来,然后 ...

  6. iOS开发中的错误整理,IOS9中canOpenURL调用失败分析

    由于IOS加入对用户隐私以及禁止扫描系统信息的控制,目前通过canOpenURL的方法来判断用户是否安装特定app,则会出现-canOpenURL: failed for URL: "ABC ...

  7. Oracle查询所有序列

    --查看当前用户的所有序列 select SEQUENCE_OWNER,SEQUENCE_NAME from dba_sequences where sequence_owner='用户名'; --查 ...

  8. ps制作gif图片

    本文自学内容来自这里 PS版本是CS6: 制作效果 步骤 1.下载素材 2.打开ps,添加素材 文件->打开->选择所有需要的素材全部打开(如图,已将需要的3个素材全部打开) 3.将素材放 ...

  9. 优先队列priority_queue的比较函数

    STL头文件:#include<queue> 优先队列: 默认从大到小排列:priority_queuee<node>q; 自定义优先级的三种方法: 1.重载操作符: bool ...

  10. c# 文件转换成base64

    private static void ReadFromFile() { FileStream fsForRead = new FileStream("c9a78c8a-29b0-410d- ...