John-Jackson 2024-09-20 02:16 采纳率: 16.7%
浏览 1
已结题

请求解答关于SSH项目的问题

personnelservice:

img

hbm.xml文件:

img

struts文件:

img

personnelaction文件:

img

Myeclipse执行的查询语句:

img

sqlserver数据库表结构即数据库名称:

img

请求解答,登录失败后导向MyJSP。jsp文件;
问题1:从查询语句来看好像只有一条是从我的数据库查询到的,剩下的都是personnel0?这个问题我应该怎么解决
问题2:除了上述问题,从action到最后的jsp
问题3:如果成功执行了语句是否证明至少myeclipse和sqlserver数据库已经互联成功

  • 写回答

7条回答 默认 最新

  • 妄北y 嵌入式领域优质创作者 2024-09-20 02:17
    关注

    以下参考免费微信小程序:皆我百晓生 作答,并由妄北y整理回复。

    根据您提供的信息,这里是对您问题的回答:

    问题1:查询语句中的 personnel0 问题

    在Hibernate生成的SQL查询语句中,personnel0_ 是Hibernate为表 personnels 自动生成的别名。这是因为Hibernate在处理关联查询时,需要为每个表指定一个别名以避免列名冲突。这个别名是随机生成的,所以您看到的 personnel0_ 只是Hibernate在这次查询中为 personnels 表指定的别名。这不是问题,而是Hibernate查询的正常现象。

    问题2:从Action到JSP的流程

    1. Action层:在 PersonnelAction 类中,login1 方法被调用。这个方法首先通过 personnelService.findPersonnel 方法查询数据库。
    2. 服务层PersonnelService 接口的实现类会调用Hibernate来执行查询。
    3. 持久层:Hibernate生成并执行SQL查询语句,从数据库中检索数据。
    4. 结果处理:如果查询结果不为空,用户信息会被存储到session中,然后Action返回 "index" 结果,导向 "MyJsp.jsp" 页面。如果查询结果为空,表示登录失败,Action返回 "login" 结果,导向登录页面。

    问题3:执行语句是否证明MyEclipse和SQL Server数据库已互联成功

    如果执行了SQL查询语句并且没有报错,这通常意味着MyEclipse已经成功连接到SQL Server数据库。但是,为了确保连接的成功和稳定性,您应该检查以下几点:

    • 数据库连接字符串:确保在配置文件中(如 hibernate.cfg.xml 或 Spring 的数据源配置)的数据库连接信息(如URL、用户名、密码)是正确的。
    • 数据库驱动:确保已经将SQL Server的JDBC驱动添加到项目的依赖中。
    • 异常处理:检查代码中是否有捕获和处理数据库连接异常的逻辑,确保在连接失败时能够及时发现并处理。

    登录失败后导向MyJSP.jsp文件

    在您的 PersonnelAction 类中,如果登录失败,您应该返回一个导向 "MyJsp.jsp" 的结果。您可以在Struts配置文件中设置一个结果页面,如下所示:

    <action name="login1" class="personnelAction" method="login1">
        <result name="login">/index.jsp</result>
        <result name="index">/MyJsp.jsp</result>
    </action>
    

    确保在 login1 方法中,根据不同的条件返回正确的结果名称。例如:

    public String login1() {
        Personnel personnel1 = personnelService.findPersonnel(personnel.getEmail(), personnel.getPassword());
        if (personnel1 != null) {
            // 将用户信息存入session
            ActionContext.getContext().getSession().put("personnel", personnel1);
            return "index"; // 成功登录,导向 MyJsp.jsp
        } else {
            return "login"; // 登录失败,导向登录页面
        }
    }
    

    确保 Struts 配置文件中的 <result> 标签正确指向了您的JSP文件路径。如果路径错误或文件不存在,可能会导致页面无法正确显示。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月20日
  • 创建了问题 9月20日

悬赏问题

  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?