service处理:
package com.primeton.eos;
import java.util.HashMap;
import java.util.Map;
import com.eos.foundation.PageCond;
import com.eos.spring.DASDaoSupport;
import commonj.sdo.DataObject;
/**
* <pre>
* Title: 程序的中文名称
* Description: 程序功能的描述
* </pre>
* @author Administrator (mailto:service6@primeton.com)
* @version 1.00.00
*
*/
public class StudentChService extends DASDaoSupport {
public void addStudentCh(DataObject object){
Map map=new HashMap();
map.put("stuid", object.get("stuid"));
map.put("schid", object.getString("schid"));
map.put("cid", object.getString("cid"));
map.put("stuno", object.getString("stuno"));
map.put("stuname", object.getString("stuname"));
map.put("sex", object.getString("sex"));
map.put("age",object.getString("age"));
map.put("entrytime", object.getDate("entrytime"));
getDASTemplate().executeNamedSql("com.primeton.eos.demo2sql.addStudent", map);
}
public void deleteStudentChs(DataObject object ){
Map map=new HashMap<String, String>();
map.put("stuid", object.getString("stuid"));
map.put("schid", object.getString("schid"));
map.put("cid", object.getString("cid"));
map.put("stuno", object.getString("stuno"));
map.put("stuname", object.getString("stuname"));
map.put("sex", object.getString("sex"));
map.put("age",object.getString("age"));
map.put("entrytime", object.getDate("entrytime"));
map.put("schno", object.getString("schno"));
map.put("schname", object.getString("schname"));
map.put("schlevel", object.getString("schlevel"));
map.put("cname", object.getString("cname"));
getDASTemplate().executeNamedSql("com.primeton.eos.demo2sql.deleteSch", map);
getDASTemplate().executeNamedSql("com.primeton.eos.demo2sql.deleteCla", map);
getDASTemplate().executeNamedSql("com.primeton.eos.demo2sql.deleteStu", map);
}
public DataObject[] queryStudentChs(DataObject dataObject,PageCond pageCond){
Map map = new HashMap();
Object sortField=dataObject.get("sortField");
Object sortOrder=dataObject.get("sortOrder");
map.put("sortField",sortField );
map.put("sortOrder", sortOrder);
map.put("stuno", dataObject.get("stuno"));
map.put("stuname", dataObject.get("stuname"));
map.put("sex", dataObject.get("sex"));
return getDASTemplate().queryByNamedSqlWithPage(DataObject.class, "com.primeton.eos.demo2sql.getStuInfo", pageCond, map);
}
public void saveModel(DataObject[] dataobjects){
for(DataObject dataobject:dataobjects){
String state = (String)dataobject.get("_state");
if ("added".equals(state))
{
addStudentCh(dataobject);
}
else if ("removed".equals(state) || "deleted".equals(state))
{
deleteStudentChs(dataobject);
}
else if ("modified".equals(state)) //更新:_state为空,或modified
{
updateStudentCh(dataobject);
}
}
}
public void updateStudentCh(DataObject dataObject){
Map map=new HashMap();
map.put("stuid", dataObject.getString("stuid"));
map.put("schid", dataObject.getString("schid"));
map.put("cid", dataObject.getString("cid"));
map.put("stuno",dataObject.get("stuno"));
map.put("stuname",dataObject.get("stuname"));
map.put("sex",dataObject.get("sex"));
map.put("age",dataObject.get("age"));
map.put("entrytime",dataObject.getDate("entrytime"));
getDASTemplate().executeNamedSql("com.primeton.eos.demo2sql.updateStu", map);
}
public DataObject[] getSchname(){
return getDASTemplate().queryByNamedSql(DataObject.class,"com.primeton.eos.demo2sql.selSchname",null);
}
public DataObject[] getCname(){
return getDASTemplate().queryByNamedSql(DataObject.class,"com.primeton.eos.demo2sql.selCname",null);
}
}
命名sql
<?xml version="1.0" encoding="UTF-8"?>
<!-- author:Administrator -->
<sqlMap>
<parameterMap class="commonj.sdo.DataObject" id="parameterMap">
<parameter javaType="date" jdbcType="DATE" property="dateType"/>
</parameterMap>
<resultMap class="commonj.sdo.DataObject" id="resultMap">
<result column="TYPEID" javaType="string" property="typeId"/>
</resultMap>
<select id="getStuInfo" parameterClass="java.util.Map" resultClass="commonj.sdo.DataObject">
select * from (
select a.stuid as "stuid",
a.stuno as "stuno",
a.stuname as "stuname",
a.sex as "sex",
a.age as "age",
a.entrytime as "entrytime",
b.schid as "schid",
b.schno as "schno",
b.schname as "schname",
b.schlevel as "schlevel",
c.cid as "cid",
c.cname as "cname"
from student_ch a, school_ch b, clazz_ch c
where a.schid = b.schid
and a.cid = c.cid
<isNotNull prepend="AND" property="stuno">
stuno = #stuno#
</isNotNull>
<isNotNull prepend="and" property="stuname">
stuname like '%'|| #stuname# || '%'
</isNotNull>
<isNotNull prepend="AND" property="sex">
sex = #sex#
</isNotNull>
)
<isNotNull property="sortField">
<isNotNull property="sortOrder">
order by "$sortField$" $sortOrder$
</isNotNull>
</isNotNull>
</select>
<update id="updateSch" parameterClass="java.util.Map" >
update school_ch set schno=#schno#,schname=#schname#,schlevel=#schlevel# where schid=#schid#
</update>
<update id="updateCla" parameterClass="java.util.Map" >
update clazz_ch set cname=#cname# where cid=#cid#
</update>
<update id="updateStu" parameterClass="java.util.Map" >
update student_ch set stuno=#stuno#,stuname=#stuname#,sex=#sex#,age=#age#,entrytime=#entrytime#,schid=#schid#,cid=#cid# where stuid=#stuid#
</update>
<delete id="deleteStu" parameterClass="java.util.Map">
delete from student_ch where stuid=#stuid#
</delete>
<delete id="deleteSch" parameterClass="java.util.Map">
delete from school_ch where schid=#schid#
</delete>
<delete id="deleteCla" parameterClass="java.util.Map">
delete from clazz_ch where cid=#cid#
</delete>
<select id="selSchname" parameterClass="java.util.Map" resultClass="commonj.sdo.DataObject">
select schid as "schid",schname as "schname" from school_ch
</select>
<select id="selCname" parameterClass="java.util.Map" resultClass="commonj.sdo.DataObject">
select distinct cid as "cid",cname as "cname" from clazz_ch
</select>
<procedure id="addStudent" parameterClass="java.util.Map">
call addStudentInfo_wxh(#stuno#,#stuname#,#sex#,#age#,#entrytime#,#schid#,#cid#)
</procedure>
</sqlMap>
存储过程:
create or replace procedure addStudentInfo_wxh
(in_stuno in student_ch.stuno%type,
in_stuname in student_ch.stuname%type,
in_sex in student_ch.sex%type,
in_age in student_ch.age%type,
in_entrytime in student_ch.entrytime%type,
in_schid in school_ch.schid%type,
in_cid in clazz_ch.cid%type) as
v_stuid int;
begin
v_stuid := seq_stu_ch.nextval;
insert into student_ch
(stuid, stuno, stuname, sex, age,entrytime,schid, cid)
values
(v_stuid,
in_stuno,
in_stuname,
in_sex,
in_age,
in_entrytime,
in_schid,
in_cid);
end addStudentInfo_wxh;