ajax实现联动菜单.docx
- 文档编号:30057603
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:28
- 大小:74.28KB
ajax实现联动菜单.docx
《ajax实现联动菜单.docx》由会员分享,可在线阅读,更多相关《ajax实现联动菜单.docx(28页珍藏版)》请在冰豆网上搜索。
ajax实现联动菜单
2010-05-27
ajax联动菜单
文章分类:
Web前端
//model层:
Area.java
Java代码
1.package com.wdpc.ajax.model;
2.
3.public class Area {
4. private int areaId;//市 id
5. private String areaName;//区域名
6. private int areaPid;//区域id
7.
8. //构造函数
9. public Area(int areaId, String areaName, int areaPid) {
10. super();
11. this.areaId = areaId;
12. this.areaName = areaName;
13. this.areaPid = areaPid;
14. }
15.
16. //get,set方法
17. public int getAreaId() {
18. return areaId;
19. }
20.
21. public void setAreaId(int areaId) {
22. this.areaId = areaId;
23. }
24.
25. public String getAreaName() {
26. return areaName;
27. }
28.
29. public void setAreaName(String areaName) {
30. this.areaName = areaName;
31. }
32.
33. public int getAreaPid() {
34. return areaPid;
35. }
36.
37. public void setAreaPid(int areaPid) {
38. this.areaPid = areaPid;
39. }
40.}
packagecom.wdpc.ajax.model;
publicclassArea{
privateintareaId;//市id
privateStringareaName;//区域名
privateintareaPid;//区域id
//构造函数
publicArea(intareaId,StringareaName,intareaPid){
super();
this.areaId=areaId;
this.areaName=areaName;
this.areaPid=areaPid;
}
//get,set方法
publicintgetAreaId(){
returnareaId;
}
publicvoidsetAreaId(intareaId){
this.areaId=areaId;
}
publicStringgetAreaName(){
returnareaName;
}
publicvoidsetAreaName(StringareaName){
this.areaName=areaName;
}
publicintgetAreaPid(){
returnareaPid;
}
publicvoidsetAreaPid(intareaPid){
this.areaPid=areaPid;
}
}
//dao层:
Java代码
1.package ms;
2.
3.import java.sql.Connection;
4.import java.sql.PreparedStatement;
5.import java.sql.ResultSet;
6.import java.sql.SQLException;
7.import javax.naming.Context;
8.import javax.naming.InitialContext;
9.import javax.sql.DataSource;
10.
11.public class DbManager {
12. public static Connection getConnection(){
13. Connection conn = null;
14. try {
15. Context context = new InitialContext();
16. DataSource ds = (DataSource) context.lookup("java:
comp/env/jdbc/ajax");
17. conn = ds.getConnection();
18. } catch (Exception e) {
19. e.printStackTrace();
20. }
21. return conn;
22. }
23.
24. public static void closeConnection(Connection conn,PreparedStatement pst,ResultSet rs){
25. try{
26. if(rs !
=null){
27. rs.close();
28. }
29. if(pst !
=null){
30. pst.close();
31. }
32. if(conn !
=null){
33. conn.close();
34. }
35. }catch(SQLException e){
36. e.printStackTrace();
37. }
38. }
39.}
packagems;
importjava.sql.Connection;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjavax.naming.Context;
importjavax.naming.InitialContext;
importjavax.sql.DataSource;
publicclassDbManager{
publicstaticConnectiongetConnection(){
Connectionconn=null;
try{
Contextcontext=newInitialContext();
DataSourceds=(DataSource)context.lookup("java:
comp/env/jdbc/ajax");
conn=ds.getConnection();
}catch(Exceptione){
e.printStackTrace();
}
returnconn;
}
publicstaticvoidcloseConnection(Connectionconn,PreparedStatementpst,ResultSetrs){
try{
if(rs!
=null){
rs.close();
}
if(pst!
=null){
pst.close();
}
if(conn!
=null){
conn.close();
}
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
//AreaDao.java
Java代码
1.package com.wdpc.ajax.dao;
2.
3.import java.sql.Connection;
4.import java.sql.PreparedStatement;
5.import java.sql.ResultSet;
6.import java.sql.SQLException;
7.import java.util.ArrayList;
8.import java.util.List;
9.import ms.DbManager;
10.import com.wdpc.ajax.model.Area;
11.
12.public class AreaDao {
13. public List findAreaByPid(int pid) {
14. Connection conn = DbManager.getConnection();//获取连接
15. PreparedStatement pst = null;
16. ResultSet rs = null;//结果集
17. List list = new ArrayList();
18.
19. try {
20. //执行语句
21. pst = conn.prepareStatement("select * from area where areaId =?
");
22. pst.setInt(1, pid);
23. rs = pst.executeQuery();
24. //遍历结果
25. while (rs.next()) {
26. list.add(new Area(rs.getInt
(1), rs.getString
(2), rs.getInt(3)));
27. }
28. } catch (SQLException e) {
29. e.printStackTrace();
30. } finally {
31. DbManager.closeConnection(conn, pst, rs);//关闭
32. }
33. return list;
34. }
35.}
packagecom.wdpc.ajax.dao;
importjava.sql.Connection;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.util.ArrayList;
importjava.util.List;
importms.DbManager;
importcom.wdpc.ajax.model.Area;
publicclassAreaDao{
publicListfindAreaByPid(intpid){
Connectionconn=DbManager.getConnection();//获取连接
PreparedStatementpst=null;
ResultSetrs=null;//结果集
Listlist=newArrayList();
try{
//执行语句
pst=conn.prepareStatement("select*fromareawhereareaId=?
");
pst.setInt(1,pid);
rs=pst.executeQuery();
//遍历结果
while(rs.next()){
list.add(newArea(rs.getInt
(1),rs.getString
(2),rs.getInt(3)));
}
}catch(SQLExceptione){
e.printStackTrace();
}finally{
DbManager.closeConnection(conn,pst,rs);//关闭
}
returnlist;
}
}
//service层:
AreaService.java
Java代码
1.package com.wdpc.ajax.service;
2.
3.import java.util.List;
4.import com.wdpc.ajax.model.Area;
5.
6.public interface AreaService {
7. public List findAreaByPid(int pid);
8.}
packagecom.wdpc.ajax.service;
importjava.util.List;
importcom.wdpc.ajax.model.Area;
publicinterfaceAreaService{
publicListfindAreaByPid(intpid);
}
//实现service层:
AreaServiceImpl.java
Java代码
1.package com.wdpc.ajax.service.impl;
2.
3.import java.util.List;
4.import com.wdpc.ajax.dao.AreaDao;
5.import com.wdpc.ajax.model.Area;
6.import com.wdpc.ajax.service.AreaService;
7.
8.public class AreaServiceImpl implements AreaService {
9. private AreaDao areaDao;
10.
11. public AreaServiceImpl() {
12. areaDao = new AreaDao();
13. }
14.
15. //通过id获取区域
16. public List findAreaByPid(int pid) {
17. return areaDao.findAreaByPid(pid);
18. }
19.}
packagecom.wdpc.ajax.service.impl;
importjava.util.List;
importcom.wdpc.ajax.dao.AreaDao;
importcom.wdpc.ajax.model.Area;
importcom.wdpc.ajax.service.AreaService;
publicclassAreaServiceImplimplementsAreaService{
privateAreaDaoareaDao;
publicAreaServiceImpl(){
areaDao=newAreaDao();
}
//通过id获取区域
publicListfindAreaByPid(intpid){
returnareaDao.findAreaByPid(pid);
}
}
//action层:
AreaServlet.java
Java代码
1.package com.wdpc.ajax.action;
2.
3.import java.io.IOException;
4.import java.io.PrintWriter;
5.import java.util.ArrayList;
6.import java.util.List;
7.import javax.servlet.ServletException;
8.import javax.servlet.http.HttpServlet;
9.import javax.servlet.http.HttpServletRequest;
10.import javax.servlet.http.HttpServletResponse;
11.import com.wdpc.ajax.model.Area;
12.import com.wdpc.ajax.service.AreaService;
13.import com.wdpc.ajax.service.impl.AreaServiceImpl;
14.
15.public class AreaServlet extends HttpServlet {
16. private AreaService areaService;
17.
18. public AreaServlet() {
19. areaService = new AreaServiceImpl();
20. }
21.
22. public void doGet(HttpServletRequest request, HttpServletResponse response)
23. throws ServletException, IOException {
24. doPost(request, response);
25. }
26. public void doPost(HttpServletRequest request, HttpServletResponse response)
27. throws ServletException, IOException {
28. request.setCharacterEncoding("utf-8");//请求时编码方式
29. response.setCharacterEncoding("utf-8");//响应时编码方式
30. List list = new ArrayList();
31. PrintWriter out = response.getWriter();
32. int pid = -1;
33. try {
34. pid = Integer.parseInt(request.getParameter("pid"));//获取JSP页面传过来的pid
35. } catch (NumberFormatException e) {
36. }
37.
38. if (pid !
= -1) {
39. list = areaService.findAreaByPid(pid);
40. out.print(getAreaXML(list));
41. }
42. out.flush();
43. out.close();
44. }
45.
46. private String getAreaXML(List list) {
47. String str = "
48. if (list !
= null && list.size() > 0) {
49. for (Area area :
list) {
50. str += "
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ajax 实现 联动 菜单