Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java beans.xml中的ms sql配置_Java_Sql Server 2008_Struts - Fatal编程技术网

Java beans.xml中的ms sql配置

Java beans.xml中的ms sql配置,java,sql-server-2008,struts,Java,Sql Server 2008,Struts,我已经安装了MSSQLServer2008,我想在一个带有Struts的Java项目中使用它。 不幸的是,我不能在Java中配置它。我正在使用MsSql的Windows身份验证。可能吗 我的beans.xml文件如下所示: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/sp

我已经安装了MSSQLServer2008,我想在一个带有Struts的Java项目中使用它。 不幸的是,我不能在Java中配置它。我正在使用MsSql的Windows身份验证。可能吗

我的beans.xml文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 
  "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
        <!-- S2-Install-Start: INSERT DB SERVER HERE -->
        <property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=MyDatabase" />
        S2-Install-End:
        <property name="username" value="Stefana\Steffi" />
        S2-Install-Start: INSERT DB PASSWORD HERE
        <property name="password" value="" />
        S2-Install-End:
    </bean>

这不是正确的做法

你拥有那个数据库吗?您的配置显示“localhost”,所以我假设是。您应该从SQL Server为应用程序使用其他用户名和密码,而不是Windows身份验证。我会为这个应用程序创建一个单独的用户。仅授予其对应用程序架构的访问权限,并授予完成其任务所需的最低权限(例如,如果不需要,则不授予删除权限;如果不需要,则不授予其对系统表的访问权限;如果不需要,则不授予其运行存储过程的权限)


更好的解决方案是使用JNDI数据源,并且在您的计算机上没有明文密码。

这不是正确的做法

你拥有那个数据库吗?您的配置显示“localhost”,所以我假设是。您应该从SQL Server为应用程序使用其他用户名和密码,而不是Windows身份验证。我会为这个应用程序创建一个单独的用户。仅授予其对应用程序架构的访问权限,并授予完成其任务所需的最低权限(例如,如果不需要,则不授予删除权限;如果不需要,则不授予其对系统表的访问权限;如果不需要,则不授予其运行存储过程的权限)


更好的解决方案是使用JNDI数据源,并且计算机上没有明文密码。

如果使用for SQL Server,则可以使用Windows身份验证。jTDS驱动程序是免费的、开源的,通常比官方的微软驱动程序更强大

如果您在项目中包含jTDS jar,我相信这个数据源URL应该可以工作:

jdbc:jtds://localhost:1433/MyDatabase;domain=Stefana
由于您在Windows上运行,jTDS驱动程序能够使用本机库使用当前凭据自动登录。但是,明确指定用户名和密码通常是一个更好的主意,因为这样你的web应用不会因启动者的不同而表现出不同的行为

还要注意,SQLServer2008默认情况下可能不会启用TCP连接。除非打开它,否则您将无法连接Microsoft驱动程序或jTDS驱动程序

要启用TCP连接:

  • 打开Sql Server Configuration Manager(它应该在“开始”菜单上)
  • 在左侧的树中,导航到SQL Server网络配置,然后是MSSQLSERVER协议
  • 您应该在协议列表中看到TCP/IP
  • 如果其状态为禁用,则双击它,并将启用选项更改为是,然后单击确定
  • 现在需要重新启动SQL Server。导航到SQL Server服务项目
  • 右键单击服务列表中的SQL Server(MSSQLSERVER)
  • 选择重新启动
  • 现在,您应该能够从Java web应用程序连接到SQL Server

如果使用for SQL Server,则可以使用Windows身份验证。jTDS驱动程序是免费的、开源的,通常比官方的微软驱动程序更强大

如果您在项目中包含jTDS jar,我相信这个数据源URL应该可以工作:

jdbc:jtds://localhost:1433/MyDatabase;domain=Stefana
由于您在Windows上运行,jTDS驱动程序能够使用本机库使用当前凭据自动登录。但是,明确指定用户名和密码通常是一个更好的主意,因为这样你的web应用不会因启动者的不同而表现出不同的行为

还要注意,SQLServer2008默认情况下可能不会启用TCP连接。除非打开它,否则您将无法连接Microsoft驱动程序或jTDS驱动程序

要启用TCP连接:

  • 打开Sql Server Configuration Manager(它应该在“开始”菜单上)
  • 在左侧的树中,导航到SQL Server网络配置,然后是MSSQLSERVER协议
  • 您应该在协议列表中看到TCP/IP
  • 如果其状态为禁用,则双击它,并将启用选项更改为是,然后单击确定
  • 现在需要重新启动SQL Server。导航到SQL Server服务项目
  • 右键单击服务列表中的SQL Server(MSSQLSERVER)
  • 选择重新启动
  • 现在,您应该能够从Java web应用程序连接到SQL Server
替换属性:

<property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=MyDatabase" />

用于:


完成

替换属性:

<property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=MyDatabase" />

用于:



完成

是的,数据库在我的本地计算机上..我读过关于默认用户名“sa”的内容,但知道它的密码,还有默认密码吗?我创建了一个新用户:stefi,密码为:stefi12345。。但仍然不起作用,用户名在我看来不合适;我在任何地方都看不到那个密码。您的Spring配置不正确。我知道它是有效的;我每天都使用它,浏览器中出现如下错误:javax.servlet.ServletException:org.springframework.jdbc.CannotGetJdbcConnectionException:无法获取jdbc连接;嵌套异常为com.microsoft.sqlserver.jdbc.SQLServerException:与主机localhost端口1433的TCP/IP连接失败。错误:“连接被拒绝:连接。请验证连接属性,检查SQL Server实例是否正在主机上运行并在端口上接受TCP/IP连接,以及防火墙是否阻止到端口的TCP连接。”。My beans.xml:是,数据库在我的本地计算机上..我读过关于默认用户名“sa”的内容,但知道它的密码,它也有默认密码吗?我创建了一个新用户:stefi,密码为:stefi12345。。但仍然不起作用,用户名在我看来不合适;