我的课堂地址管理功能

目录
1. Web端工程搭建    2
2. 反向工程生成数据模型    6
3.创建SysMenuDao,用于操作菜单栏    7
4.编写newIndex.jsp    8
5. 在WebAction中增加index方法,显示左侧菜单    14
6. 在struts.xml中进行配置    16
7. Address的DAO接口    18
8.Address的DAO接口实现    18
9.编写WebAction,实现分页显示所有地址功能    20
10.在struts.xml中进行配置    22
11.编写addresslist.jsp,显示所有地址    22
12.实现修改地址,编写WebAction    28
13.实现修改地址,先编写addresslist.jsp的跳转    29
写一个方法用于跳转到oneAddress,并且把addressId传给action    29
14.实现修改地址,编写updateAddress.jsp    30
15.实现新增地址,编写WebAction    34
16.实现新增地址,编写addAddress.jsp    35


1. Web端工程搭建
1.1 新建SDSYwZJF项目
 
1.2 添加SSH库包支持
 
1.3 添加spring支持
 
1.4 在DB Browser视图中添加数据库连接
首先将mysql-connector-java-5.0.8.jar包复制到WEB-INF|lib目录下,MyEclipse自动将该jar包添加到Web App Libraries引用目录下。
 
1.5 添加struts支持
 
  
1.6 在src文件夹下新建struts.properties文件
在该文件中,添加:struts.objectFactory=spring
1.7 添加Hibernate支持以及数据库连接
 
 
 
1.8 测试网页是否成功运行
 


2. 反向工程生成数据模型
这个数据库里的所有表都是单表,表之间没有外键,所以反向address和sys_menu表即可

 
此时遇到错误An internal error occurred during: "Generating Artifacts". java.lang.NullPointerException

百度后解决


反向后生成这几个文件
 


同时applicationContext中生成
    <property name="mappingResources">
            <list>
                <value>web/model/Address.hbm.xml</value>
                <value>web/model/SysMenu.hbm.xml</value>
            </list>
        </property>

3.创建SysMenuDao,用于操作菜单栏
public interface SysMenuDao {
            
    List<String> findPmenu();    //查找父菜单,通过group by 查找父菜单的名称
    List<SysMenu> findSysMenu();//菜单栏所有的操作对象
}
新建SysMenuDaoImp实现SysMenuDao
public class SysMenuDaoImp extends HibernateDaoSupport implements SysMenuDao {

    
    @Override
    public List<SysMenu> findSysMenu() {
        // TODO Auto-generated method stub
                List<SysMenu> list=this.getHibernateTemplate().find("from SysMenu order by fsign,sign");
                return list;
    }
    
    @Override
    public List<String> findPmenu() {
        List<SysMenu> list=this.getHibernateTemplate().find("from SysMenu group by name order by fsign");
        List<String> listm=new ArrayList<String>();
        if(list!=null&&list.size()>0){
            for(int i=0;i<list.size();i++){
                listm.add(list.get(i).getName());
            }
        }
        return listm;
    }

}
4.编写newIndex.jsp
class和id 在css文件中的使用区别
 
 
<html lang="zh">    指定html的字符集
<meta charset="UTF-8" />    指定编码
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
在移动设备上显示时控制他的长宽比例
导入的link
<link rel="stylesheet" href="css/bootstrap.min.css" />     标准jquery库
<link rel="stylesheet" href="css/matrix-style.css" />      定义 id="sidebar" id="content" id=”header” 的样式
<link rel="stylesheet" href="css/matrix-media.css" />    定义 id="sidebar"
id="content" id=”header”的背景色
<link href="font-awesome/css/font-awesome.css" rel="stylesheet" />
定义icon-check   icon-key  icon-lock icon-caret-right  图标选择组件
<script src="js/jquery.min.js"></script>
<script src="js/excanvas.min.js"></script>
   <script src="js/jquery.ui.custom.js"></script>
使用JQuery要导入的js文件,用于控制菜单栏样式
var url="index",跳转到index.action
data是JSONObject对象s中的一个数据对象,步骤5会往s对象里放数据
 
<script type="text/javascript">
        $(document).ready(function(){ 
        var url="index";
         login(url);
});
 function  login(url){
   $.ajax({
                url: url,
                type: "Get",
                async: false ,
                dataType: "json",    
                success: function(data) { 
                 for(var i=0;i<data.data.length;i++){
                  var str="<li class='submenu'><a herf='#'><span>"+data.data[i].name+"</span></a><ul>"
                     for(var j=0;j<data.data[i].list.length;j++){
                     str+='<li><a class="menu_a" link="'+data.data[i].list[j].url+'"> '+data.data[i].list[j].functions+'</a></li>'
                     }
                       str+="</ul></li>"            拼凑jsp代码
                        document.getElementById("index").innerHTML+=str;将代码放到页面中 index位置
                 }        
    }
            });
 }
css class    功能描述    css文件
navbar    基础导航条    css/bootstrap.min.css
navbar-inverse    指定导航条组件为黑色主题    css/bootstrap.min.css
nav    nav表示导航标签    css/bootstrap.min.css
dropdown    简单的下拉列表插件    css/bootstrap.min.css
dropdown-toggle    按钮右侧的圆角    css/bootstrap.min.css
text    文本样式    css/bootstrap.min.css
dropdown-menu    下拉菜单    css/bootstrap.min.css
icon-check    UI图标    font-awesome/css/font-awesome.css
icon-key    UI图标    font-awesome/css/font-awesome.css
submenu    下拉菜单    css/bootstrap.min.css
icon-lock    锁图标选择组件    font-awesome/css/font-awesome.css
icon-caret-right    右箭头图标选择组件    font-awesome/css/font-awesome.css
tip-bottom    鼠标悬停Tip    js/matrix.js 这是一个js事件
icon-home    房子图标    font-awesome/css/font-awesome.css

<div id="header">
        <h1>
            <a>管理平台</a>
        </h1>
    </div>

    <!--top-Header-menu-->
    <div id="user-nav" class="navbar navbar-inverse">
        <ul class="nav">
            <li class="dropdown" id="profile-messages"><a title="" href="#"
                data-toggle="dropdown" data-target="#profile-messages"
                class="dropdown-toggle"> <i class="icon icon-user"></i>&nbsp; <span
                    class="text">欢迎你,<%=loginname%>
                </span>&nbsp; <b class="caret"></b>
            </a>
                <ul class="dropdown-menu">
                    <li><a class="menu_a" link="allActivity.action"><i
                            class="icon-check"></i> 我的发布</a></li>
                    <li class="divider"></li>
                    <li><a class="menu_a" οnclick="unLogin(this)"><i
                            class="icon-key"></i> 退出系统</a></li>
                </ul></li>

        </ul>
    </div>
    <

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值