- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
启动应用程序时出现问题。它提示:
org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/users</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/context.xml</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
</web-app>
context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/users"
global="jdbc/users"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="admin"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/users" />
</Context>
InputServlet
package pl.javastart.prepared.servlet;
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
@WebServlet("/InputServlet")
public class InputServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Connection conn = null;
ResultSet resultSet = null;
Statement statement = null;
try {
Context initialContext = new InitialContext();
Context envContext = (Context) initialContext
.lookup("java:comp/env");
DataSource ds = (DataSource) envContext.lookup("jdbc/users");
conn = ds.getConnection();
statement = conn.createStatement();
String username = request.getParameter("username");
String password = request.getParameter("password");
// pass2" OR '1'='1'; --
final String sqlQuery = "SELECT username, password FROM user WHERE "
+"username=" + "\"" + username + "\" "
+"AND "
+"password=" + "\"" + password + "\";";
System.out.println(sqlQuery);
resultSet = statement.executeQuery(sqlQuery);
if(resultSet.next()) {
String userFound = resultSet.getString("username");
request.getSession().setAttribute("username", userFound);
if("admin".equals(userFound)) {
request.getSession().setAttribute("privigiles", "all");
} else{
request.getSession().setAttribute("privigiles", "view");
}
} else {
request.getSession().setAttribute("username", "Nieznajomy");
request.getSession().setAttribute("privigiles", "none");
}
request.getRequestDispatcher("result.jsp").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
resultSet.close();
statement.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
结果.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>Welcome <%= session.getAttribute("username") %></h1>
<h2>Your privigiles: <%= session.getAttribute("privigiles") %></h2>
</body>
</html>
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Log in</title>
</head>
<body>
<h1>Log in</h1>
<form action="InputServlet" method="post">
<input type="text" placeHolder="Username" name="username">
<br>
<input type="password" placeHolder="Password" name="password">
<br>
<input type="submit" value="Zaloguj">
</form>
</body>
</html>
旧版本 Tomcat 的解决方案在这里不起作用
最佳答案
在 web.xml 中添加 servlet 映射:
<servlet>
<servlet-name>InputServlet</servlet-name>
<servlet-class>pl.javastart.prepared.servlet.InputServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>InputServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
关于JavaEE/Tomcat 9.0.0/IntellijIdea 2016.2 : At least one JAR was scanned for TLDs yet contained no TLDs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39356481/
我正在使用扫描仪检测设备。目前,我的条形码的值为 2345345 A1。因此,当我扫描到记事本或文本编辑器时,输出将类似于 2345345 A1,这是正确的条形码值。 问题是: 当我第一次将条形码扫描
我正在尝试在 Jenkins 的构建后部分运行 Checkmarx Scan。 在我的 Jenkins 工作步骤是--> 1st) 从 SVN Connection 获取源代码到 Checkmarx
我有以下表架构 - CREATE TABLE [dbo].[TEST_TABLE] ( [TEST_TABLE_ID] [int] IDENTITY(1,1) NOT NULL, [N
我有一个关于 postgres 表上的选择的有趣案例: advert (~2.5 million records) id serial, user_id integer (foreig
据我所知,context:component-scan 需要指定 base-package 属性。我如何配置它以扫描类路径中的所有类? 最佳答案 你不知道。那将是一场噩梦。 例如,这意味着加载所有库的
我正在测试不同的查询,我很好奇数据库如何决定使用位图堆扫描和索引扫描。 create index customers_email_idx on customers(email varchar_patt
我在使用中 Swing 不定 import java.util.Scanner; . . . Scanner scan = new Scanner(System.in); . . . Integer.
我有下表 create table log ( id bigint default nextval('log_id_seq'::regclass) not null const
所以我有一个文件要读入,我知道数据将如何列出。例如,我知道每个新行的第一个标记将是 double 。 我一直在使用 Scanner 并且只是使用 scan.nextDouble() 来读取 doubl
在这种情况下,该表有很多文本列,我需要对每一列执行(相似)搜索。我继续为这些列中的每一列创建一个 gin 索引(扩展 pg_trgm 中的 gin_trgm_ops)以加快搜索速度,实际上 yie
我有两个针对 Go 中特定表的查询 - 一个用于检索单个项目,另一个用于返回列表。第一个使用 sql.DB.QueryRow 因为它只需要检索一行,第二个使用 sql.DB.Query 返回几个不同的
添加 StructureMap-MVC3 时打包到 ASP.NET MVC 应用程序, 一个 IoC包含 Initialize 的类添加了包含以下内容的方法(由 App_Start 文件夹中的某些代码
我有以下索引: CREATE INDEX index_c_profiles_on_city_state_name_domain ON c_profiles ((data->>'state'), (da
我在 Postgres 10 中有一个包含 1700 万行和 102 列的表 union_events。我运行命令: CREATE INDEX union_events_index ON temp_s
我以为我知道 Ruby 中的 scan:就好像它在做一个单一的匹配,但对所有结果重复它并放入数组? ruby-1.9.2-p0 > "hello world".scan(/\w{2}/) => ["
我收到此错误并尝试了互联网和 stackoverlow 中可用的所有方法来解决此问题。我试图在使用 sqlx 包连接 MySQL 数据库并扫描结果后运行查询。我已经尝试过针对类似问题共享的解决方案,但
我是 spring 和 Maven 的新手。最近我构建了 spring MVC 项目并使用 maven 来管理项目结构和依赖项。 当我编写单元测试时,我遇到了一个问题,即我无法从“src/main/j
我现在正在尝试 restful api,其中列 SequenceID 不是自动增量,因为故意的,当我像这样计数时,我的问题是库 gorm countSequenceId := db.Debug().T
Scans 当客户端针对表发出扫描时,HBase会为每个区域生成一个RegionScanner对象来提供扫描请求。 该RegionScanner对象包含一个StoreScanner对象列表
我正在构建一个基于浏览器的文档扫描应用程序。我看过多家供应商提供的产品,如 dynamosoft、asprise、atalasoft 等。我对基于浏览器的文档扫描的基本问题是,这些产品中的任何一个都可
我是一名优秀的程序员,十分优秀!