得到部门的servlet


//联动菜单。js调用查询部门字段 by xg

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

response.setCharacterEncoding("utf-8");

List<DepartmentInfo> list=null;

String wordXML = "";

try {

Reader reader = Resources.getResourceAsReader("cn/zc13/framework/persistence/config/SqlMapConfig.xml");

SqlMapClient sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);

try {

list = sqlMapClient.queryForList("publictool.selectAllDepartmentInfo");

for(DepartmentInfo u : list){

wordXML =  wordXML +"<option value='" + u.getDepartmentID()+"'>"+ u.getName()+"</option>/n";

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

response.getWriter().write(wordXML);

}


得到人员的servlet


//联动菜单。js调用查询人员字段 by xg

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

response.setCharacterEncoding("utf-8");

String wordXML = "<script type='text/javascript'>var subclass = new Array();";

int i=0;

List<PersonInfo> list=null;

//String dep = request.getParameter("dep");

try {

Reader reader = Resources.getResourceAsReader("cn/zc13/framework/persistence/config/SqlMapConfig.xml");

SqlMapClient sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);

//wordXML = wordStartXML;

try {

//int org=Integer.parseInt(dep);

list = sqlMapClient.queryForList("publictool.selectAllPersonInfo");

//     System.out.println(list);

for(PersonInfo u : list){

wordXML =  wordXML +"subclass["+i+"]=new Array('"+u.getPersonID()+"','"+u.getName()+"','"+u.getDepartmentID()+"');";

i++;

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

wordXML = wordXML + "</script>";

response.getWriter().write(wordXML);

System.out.println(wordXML+"11111111");

}


相关的javabean


public class DepartmentInfo {

private int departmentID;

private String name;

public int getDepartmentID() {

return departmentID;

}

public void setDepartmentID(int departmentID) {

this.departmentID = departmentID;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}


public class PersonInfo {
private int personID;
private String name;
private String DepartmentID;
private String position;
public int getPersonID() {
return personID;
}
public void setPersonID(int personID) {
this.personID = personID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDepartmentID() {
return DepartmentID;
}
public void setDepartmentID(String departmentID) {
DepartmentID = departmentID;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}

SQLMAP文件


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap      
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"      
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="publictool">
<typeAlias alias="DepartmentInfo" type="cn.zc13.zcoa.publictool.pojo.DepartmentInfo"/>
<typeAlias alias="PersonInfo" type="cn.zc13.zcoa.publictool.pojo.PersonInfo"/>
<resultMap id="DepartmentInfoResult" class="DepartmentInfo">
<result property="departmentID" column="org_id"/>
<result property="name" column="org_name"/>
</resultMap>
<resultMap id="PersonInfoResult" class="PersonInfo">
<result property="personID" column="id"/>
<result property="name" column="u_name"/>
<result property="DepartmentID" column="org_id"/>
</resultMap>
<!-- 全部部门 -->
<select id="selectAllDepartmentInfo" resultMap="DepartmentInfoResult">
select org_id,org_name from u_orgnization
</select>
<!-- 全部人员 -->
<select id="selectAllPersonInfo" resultMap="PersonInfoResult">
select user_id as id,user_real_name as u_name,org_id from u_user
</select>
<!-- 指定人员 -->
<select id="selectOnePersonInfo" parameterClass="Integer" resultMap="PersonInfoResult">
select
user_id as id,
user_real_name as u_name
from u_user
where org_id = #org_id#
</select>
</sqlMap>

JS代码


/* --------------------------------------buy XG------------------------------------- */
$(document).ready(function(){
var selectNode=$("#BMselect");
var selectNode1=$("#BMselect1");
var url="servlet/ShowDepartment";
var length;
$.get(url,null,function(data){      /* 发送请求,并创建回调函数*/
if(data!=""){
/*-----START----------------------赋值 开始------------------------------------ */
selectNode.empty();
selectNode1.empty();
selectNode.append($("<option>").html("请选择部门").attr("value", "0"));
selectNode1.append($("<option>").html("请选择部门").attr("value", "0"));
selectNode.append(data);
selectNode1.append(data);
/*-----END----------------------赋值 结束------------------------------------ */
}else{
selectNode.empty();
selectNode1.empty();
selectNode.append($("<option>").html("没有部门").attr("value", "0"));
selectNode1.append($("<option>").html("没有部门").attr("value", "0"));
alert("没有部门信息!");
}
});
people_array();
})
function people_array()
{
var selectNode=$("#selectDIV");
var url="servlet/ShowPerson";
$.get(url,null,function(data){      /* 发送请求,并创建回调函数*/
selectNode.empty();
selectNode.append(data);
});
}
function listClass(Itemid,id,index){
document.getElementById(id).length=index;//初始化下拉列表 清空下拉数据
//document.getElementById(id).options[0]=new Option("全部人员","")
for (i=0; i<subclass.length; i++)                            
{    
if (subclass[i][2] == Itemid)                  
{
//建立 option
document.getElementById(id).options[document.getElementById(id).length] = new Option (subclass[i][1], subclass[i][0]);
//document.getElementById(id).options[document.getElementById(id).length] = new Option (subclass[i][1], subclass[i][0]);
}
}

页面调用


<!-- ~~~~~~~~~~~~联动菜单~~~~~~~~~~~~~XG~~~~~~~~ -->
<script type="text/javascript" src="resources_oa/javascript/jquery.js"></script>
<div id="selectDIV" name="selectDIV"></div>
<script type="text/javascript" src="resources_oa/javascript/selectjsp_list.js"></script>
<!-- ~~~~~~~~~~~~联动菜单~~~~~~~~~~~~~XG~~~~~~~~ -->
<select name="BMselect1" id="BMselect1"   οnchange="listClass(this.value,'RYselect1',1);">
</select>
<select name="RYselect1" id="RYselect1">
<option value="1" selected="selected">所有人员</option>
</select>

ajax+iBATIS实现一次性数据库读取二联菜单相关推荐

  1. c#操作数据库(二)dataAdapter篇

    c#操作数据库(二)dataAdapter篇 2009-04-01 21:29 受够了ctrl+c加ctrl+v,忍无可忍之第二篇. 上篇博客介绍了用datareader操作数据库,dataReade ...

  2. ASP.NET状缓存Cache的应用-提高数据库读取速度

    ASP.NET状缓存Cache的应用-提高数据库读取速度 原文:ASP.NET状缓存Cache的应用-提高数据库读取速度 一. Cache概述        既然缓存中的数据其实是来自数据库的,那么缓 ...

  3. 上传图片至服务器,写入到数据库Blob字段中,以及从数据库读取Blob信息(iframe父子页面传值)(1)

    最近做了个用户维护功能,涉及到照片的操作. 照片是存到数据库oracle中的Blob字段中. 难点有两个: 1,图片的上传:2,Blob字段的读取. 先说图片的上传吧, 我使用common-fileu ...

  4. Springboot 从数据库读取数据库配置信息,动态切换多数据源 最详细实战教程

    以前写过一篇教程,Springboot AOP方式切换多数据源(主从两库类似情况使用最佳): https://blog.csdn.net/qq_35387940/article/details/100 ...

  5. ajax php瀑布流数据库,原生ajax瀑布流demo实例分享

    本文主要为大家带来一篇原生ajax瀑布流demo分享(必看篇).小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧,希望能帮助到大家. 简单分为三个文档,有详细的注释:img ...

  6. java连接Excel数据库读取,写入,操纵Excel表格

    java连接Excel数据库读取,写入,操纵Excel表格 (2009-11-15 14:21:03) 转载 标签: java excel 连接 杂谈 分类:技术文档 java连接MicroSoft ...

  7. php jq ajax 4个下拉框联动案列,Ajax与Jquery结合数据库做出实现下拉框的二级联动...

    这次给大家带来Ajax与Jquery结合数据库做出实现下拉框的二级联动,Ajax与Jquery结合数据库做出实现下拉框二级联动的注意事项有哪些,下面就是实战案例,一起来看一下. 首先我们需要先建立好数 ...

  8. Python从数据库读取大量数据批量写入文件的方法

    今天小编就为大家分享一篇Python从数据库读取大量数据批量写入文件的方法,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 使用机器学习训练数据时,如果数据量较大可能我们不能够一次性将 ...

  9. Redis数据库(二)——Redis高可用、持久化及性能管理

    Redis数据库(二)--Redis高可用.持久化及性能管理 一.Redis 高可用 主要的高可用技术 二.Redis 持久化 1.持久化的功能 2.两种持久化方式 3.RDB 和 AOF 的区别 ① ...

最新文章

  1. 我们前端忙成狗人家后端写SQL?
  2. Word 最后一页无法删除-解决办法
  3. python 类属性及限制
  4. OpenCV Shi-Tomasi corner 检测器
  5. python交互模式设置及VIM的tab补齐
  6. C与java通讯小结
  7. T-SQL with as 关键字
  8. linux netfilter 过滤数据包,Netfilter-iptabes报文过滤框架(一)
  9. Ubuntu 16.04 下octave的使用入门
  10. 打破南北网络障碍 打造财务安全“双保险”——烟台万华借沟通CTBS实现财务大集中...
  11. 使用Keras框架进行单变量时间序列预测——以上证指数为例
  12. Uber 和通用拟开源自动驾驶可视化软件
  13. 从源代码编译安装 Mono 2.4 和 MonoDevelop 2.0
  14. 北师范《计算机导论》在线作业,福建师范大学17年8月《计算机导论》作业考核试题答案材料...
  15. SQL Server 2008 R2 彻底卸载
  16. 【机器学习】:如何对你的数据进行分类?
  17. 用Python全自动播放尔雅网课
  18. linux 安装串口驱动安装失败,z-tek(求救Z-TEK串口安装失败,提示:该设备的驱动程序未被安装(代码28)这个inf中的服务安装段落无效?)...
  19. 射频IC行业为何这么惨?——RFIC的尴尬的现实和迷茫的未来
  20. ArcGis 地理配准注意事项

热门文章

  1. WPF编写界面代码快速换行
  2. 剑指 Offer 13. 机器人的运动范围
  3. centos下安装python3详细教程
  4. 不使用pinyin4j, 通过字符串截取手段快速查询通讯录联系人的拼音(包括全拼和简拼)
  5. 使用阿里云Maven仓库部署项目公共jar包(Gardle)
  6. antd-design-pro项目引用微前端,使用qiankun实现动态路由加载
  7. 歌 特 金 属 (Gothic Metal)
  8. FlinkMysqlSourceFlinkMysqlSink
  9. jmeter报错,不晓得有没有遇到同样问题的伙伴出来帮忙解答一下
  10. 讯飞星火怎么用?@不同身份的你