做毕业论文时遇见的问题

1.hibernate 怎么基于view查询
        主要是该怎么配置文件:
        User.hbm.xml及具体对应的类?
        applicationContext.xml的配置问题

2.jstl和el 怎么查询数据库中带外键的数据并“显示页面”
        比如Student:
            1.其中有teacherId要怎么显示页面teacherId;
            2.其次又怎么显示teacherName
            
解决办法:如${student.teacherId}错误该写成${student.teacher.teacherId}就可以啦

3.我建的数据库的重大bug 在于:
         就是在student_college视图中删除collegeName结局college就被删除啦,该怎么重新修改呢?
通过java代码控制readonly="readonly"
         
4.删除时遇见read-only="true"怎么办
    org.springframework.dao.InvalidDataAccessApiUsageException:
    Write operations are not allowed in read-only mode (FlushMode.MANUAL):
    Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
    配置文件出错:
    <!-- 哪些类的哪些方法参与事务 -->
    <aop:config>
        <aop:pointcut id="allServiceMethod" expression="execution(* service.*.*.*(..))" />
        <!-- <aop:advisor pointcut-ref="allServiceMethod" advice-ref="txAdvice" /> -->
    </aop:config>
    应该改为:expression="execution(*com.gzdx.gzdxso.service.*.*.*(..))"
    
5.满加载异常
    description The server encountered an internal error that prevented it from fulfilling this request.
    解决办法:
    出现满加载异常是因为:
    java代码中出现啦死循环

6.数据库脏数据异常处理
    数据库出现脏数据是因为对应数据外键数据不存在或者出现错误,应该好好修改

   

一.关于返工重新做“在线学习系统”遇见的问题

1.遇见的问题:
    配置问题:
    applicationContent.xml
“<bean>model.student.undefined 不能实例化”    总是报错:model.Student 不存在
    解决办法
    (1)找到相应的包:加上相应的包名:com.gzdx.gzdxso.model
    (2)修改实体类User中与     User.hbm.xml中的数据一一对应;
    (3)重新配置applicationContent.xml

2.配置总是不能被使用
    原因:jar包冲突
    
3.<bean>adminService找不到
解决办法:以下所有皆是接口定义:
    (1)首先在AdminAction中定义好private static IAdminService iAdminService = null;并给与set,get方法
    (2)其次重新配置applicationContent.xml
    (3)在测试包中查看问题产生的原因    
    <bean id="adminAction" class="com.gzdx.gzdxso.action.AdminAction" scope="prototype">
        <property name="iAdminService" ref="iAdminService"/>
    </bean>
    <bean id="iAdminService" class="com.gzdx.gzdxso.service.AdminService">
        <property name="adminDAO" ref="AdminDAO"/>
    </bean>

4.Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
    原因:由于id是自动增长的,并且更新是传啦id所以报错  将所有的
     <generator class="increment"/>改为 <generator class="native"/>
5.basedao中的find()和load不能用需要重写
6.添加用户:add
    public void add(T t) {
        this.getHibernateTemplate().save(t);
    }
    
7.删除用户:del
    public void delete(int id) {
        this.getHibernateTemplate().delete(this.load(id));
    }
8.查找用户:load或get通过Id
    public Admin findId(int id) {
        Admin instance = (Admin)getHibernateTemplate().load(Admin.class, id);
        System.out.println(instance);
        return instance;
    }
9.修改用户:
    最初不能修改,详见4
    public void update(T t) {
        this.getHibernateTemplate().update(t);
    }
    
10. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    /classes/struts.xml; lineNumber: 23; columnNumber: 1; XML 文档结构必须从头至尾包含在同一个实体内。
    解决办法:1.jar包冲突
           2.struts.xml版本版本不对       “重新写一个”
           3.web.xml中错误        “重新写一个”

1.在jsp中添加
    (1)common表      
        包括common.jsp    .exception.jsp        pub_add_success.jsp        pub_del_success.jsp
        pub_update_success.jsp
    (2)script
         public.jsp添加窗口添加,刷新..
    (3)在需要的jsp中添加如下
    <%@include file="../common/common.jsp" %>
    错一天
    <script language="javascript" src="yemian/script/public.js"></script>
    
2.此问题错误 href="#" 其中#找的是默认路经,修改过就可以啦
    当热要在AdminAction中写对应的方法
    public String todeleteSu(){
        adminList = getiAdminService().list();
        return "adminLists";
    }
    <a href="admin_todeleteSu" οnclick="del('admin_delById?adminId=${admin.id}')" >删除</a>
    
3.取不到Id  将name="id" 改为 name="adminId"
<td width="78%">
    <input name="adminId" type="text"  class="text1" id="userId"
        size="10" maxlength="10" value="${a1.id}" >
</td>

    
    或者
    <a href="admin_delById?adminId=${admin.id}">删除</a>
    然后在下添加
    <c:choose>
    <c:when test="${fromWhere eq 'admindelete' }">
    <a href="admin_todeleteSucc">关闭窗口</a>
    </c:when>
    </c:choose>
    
3.     lineNumber: 12; columnNumber: 47; cvc-elt.1: 找不到元素 'beans' 的声明r的异常信息。
    现象:Tomcat启动时,spring加载配置文件applicationContext.xml出错,抛出nested exception
        is og.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 47; cvc-elt.1:
         找不到元素 'beans' 的声明r的异常信息。
    造成该异常原因:配置文件头部配置的xsd版本信息不正确,造成解析时出错。spring头部xsd或dtd校验文件的查找分两步,
        第一先从本地jar包中找,如果找到则用本地jar包的进行校验(可以在spring-beans.jar或spring-context.jar
        里的META-INF下的spring-schemas文件中找到xsd文件位置的定义),如果没有找到则进行第二步查找,它会尝试从网络
        中下载该文件然后校验,如果系统断网或下载不下来,则会抛出上述异常.
    解决办法 : 将applicationContext.xml中xsd文件定义的版本改为spring jar包中定义的xsd的版本,如果版
    本定义的太高在本地会无法找到,只能从网络上下载。

4.Unable to instantiate Action, teacherAction, defined for 'teacher_findTeache
    原因是在applicationContent.xml中没有配置在其中配置以下内容就行啦
    <bean id="teacherAction" class="com.gzdx.gzdxso.action.TeacherAction" scope="prototype">
        <property name="iTeacherService" ref="iTeacherService"/>
    </bean>
    <bean id="studentAction" class="com.gzdx.gzdxso.action.StudentAction" scope="prototype">
        <property name="iStudentService" ref="iStudentService"/>
    </bean>
    
5.遇见页面不能跳转
    原因是少加啦
    <%@include file="../common/common.jsp" %>
 


1.由于有外键的存在,添加不了数据
    原因无法teacher.setCollege();
    解决办法:College college = new College();
            college.setcollegeId(id);
            College.save(college);
        teacher.setCollege(college);
        
        
2.java.lang.NoSuchMethodException
转化类型不同还有忘记跳转
# Struts OgnlUtil issues unimportant warnings
log4j.logger.com.opensymphony.xwork2.util.OgnlUtil=error
log4j.logger.com.opensymphony.xwork2.ognl.OgnlValueStack=error

3.    错误原因:Teacher a1=iTeacherService.load(collegeId);
public String updateIn(){
        Teacher a1=iTeacherService.load(teacherId);
        ActionContext.getContext().put("a1", a1);
        return "modifyteacher";
    }
 ServletActionContext.getRequest().getSession()
                                .setAttribute("LOGINsystem1", login2);
                                
 public String findMessage() {
        Student login2=(Student) ServletActionContext.getRequest().getSession()
        .getAttribute("LOGINsystem1");
        pager = iStudentService.findMessage(login2.getId());
        return "StudentfindMessage";
    }

4.Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
原因数据未对位:name="id"改为name="teacherId"
        <input name="teacherId" type="hidden"  class="text1" id="userId" size="10" maxlength="10" value="${a1.id}" >${a1.id}

        
5.遇见的问题  不能转发
 ServletActionContext.getRequest().getSession()
                                .setAttribute("LOGINsystem1", login2);
                                
 public String findMessage() {
        Student login2=(Student) ServletActionContext.getRequest().getSession()
        .getAttribute("LOGINsystem1");
        pager = iStudentService.findMessage(login2.getId());
        return "StudentfindMessage";
    }

 


一. 由于是转发,所有所有路径全改
      1.="../   改为      ="yemian/
      2.在jsp页面添加          绝对路径            和            jstl   标签
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
    <head>
    <base href="<%=basePath%>">


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值