java - 为要上传到 Web 主机的 jsp 页面提供安全性

标签 java jsp security database-connection web-hosting

我对这一切都很陌生。 我创建了一个由所有 jsp 页面组成的 Web 应用程序(注意:html 内容与主要逻辑一起嵌入在这些 jsp 页面本身中) 我的一些代码片段如下:

<%
final String host = "jdbc:mysql://mySQLPath/ShopSystem";
final String uName = "myUsername";
final String uPass = "myPassword";
Connection con = DriverManager.getConnection( host, uName, uPass );
%>

我的很多文件都有上面的代码行。 现在我想将这些文件上传到虚拟主机上,以尝试发布我的网站。但我担心的是,这样做时我会在第三方网站上上传我的用户名和密码。

还有其他更好的方法吗?我不希望任何第三方能够查看我的网址、用户名和密码。

最佳答案

添加到@Jigar Joshi 的回答中,将数据库详细信息写入单独的配置文件是一种很好的做法。

它在您考虑更改时也很有用。正如您所说,许多文件都包含此值,您可以在一个公共(public)位置更改它们并加载它们以应用于所有文件。

在应用程序的类路径中创建一个 config.properties 文件。

在您的 jsp 中读取属性文件,因此您的代码不会显示它们

        Properties props = new Properties();    
        FileInputStream fis = null;
        Connection con = null;  
        fis = new FileInputStream("File.properties");
        props.load(fis);

        // load the Driver Class
        Class.forName(props.getProperty("DB_DRIVER_CLASS"));

        // create the connection now
        con = DriverManager.getConnection(props.getProperty("DB_URL"),
                props.getProperty("DB_USERNAME"),
                props.getProperty("DB_PASSWORD"));

在您的 jsp 中将为您完成这项工作。但是你要通过Datasource了解优化数据库并了解 connection pooling以避免连接泄漏。

希望对您有所帮助!!

关于java - 为要上传到 Web 主机的 jsp 页面提供安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25236084/

相关文章:

Java Web 应用程序通过 cookie 保护授权

php - HTTP_RAW_POST_DATA 的安全问题

java - 我无法获取 jtextfield 中任何数字值的百分比

spring - jsp errorPage 无法与 spring dispatcher 一起正常工作

html - 当按钮改变同一 <tr> 中的填充时,如何使 <td> 居中?

java-servlet request.getParameterValues()

java - RSA block 失败的数据过多。什么是 PKCS#7?

java - 解析方法签名字符串

java - 将命令式代码转换为非连续一个实现的声明式代码

java - hibernate 异常