Java 从CSV文件读取数据,它将自动生成发送到JSP页面的电子邮件ID
我有两个文本框,即Java 从CSV文件读取数据,它将自动生成发送到JSP页面的电子邮件ID,java,jsp,Java,Jsp,我有两个文本框,即LVPL\u name和Email\u ID 如果我从LVPL_name的下拉列表中选择任何名称,它将自动从CSV文件生成相应的电子邮件ID,并显示在JSP页面中 我的示例代码: try { String fileName = "LVPL_names.csv"; CSVReader reader = new CSVReader(new FileReader(fileName )); String[] rows = new CSVReader(reade
LVPL\u name
和Email\u ID
如果我从LVPL_name
的下拉列表中选择任何名称,它将自动从CSV文件生成相应的电子邮件ID,并显示在JSP页面中
我的示例代码:
try {
String fileName = "LVPL_names.csv";
CSVReader reader = new CSVReader(new FileReader(fileName ));
String[] rows = new CSVReader(reader).readEmail_ID();
if (x == Aarthi) {
System.out.println("Selected LVPL_name"+name.index of (Email_ID));
} else {
System.out.println("Enter the Email_ID");
}
} catch() {
}
我的Excel表格是:
LVPL_name Email ID
-----------------------
aaaaa1 aaaaa1@sap.com
aaaaa2 aaaaa2@sap.com
aaaaa3 aaaaa3@sap.com
aaaaa4 aaaaa4@sap.com
aaaaa5 aaaaa5@sap.com
我认为我的代码有问题。您必须通过
ajax
/servlet
/xhr
请求来实现这一点。下面是一个xhr
请求的示例
要使以下代码按原样正常工作(未编辑),您必须将CSV文件放在C:
drive中。您的CSV文件名必须是mydata.CSV
。而且,您还应该将index.jsp
和getEmail.jsp
放在同一个文件夹中
index.jsp
<%@page import="java.io.File"%>
<%@page import="java.io.FileReader"%>
<%@page import="com.opencsv.CSVReader"%>
<%@page import="java.util.ArrayList"%>
<html>
<head>
<script>
function selected(value){
var xhReq = new XMLHttpRequest();
xhReq.open("GET", "getEmail.jsp?lvpl=" + value, false);
xhReq.send(null);
var serverResponse = xhReq.responseText;
document.getElementById('textbox').value = serverResponse;
}
</script>
</head>
<body>
<%
// Varaibles
String lvpl, email;
int counter = 0;
CSVReader reader = new CSVReader(new FileReader(new File("C://mydata.csv")));
String[] data;
%>
<select onchange="selected(this.value)">
<%
// READING TO CSV TO CREATE DATA IN SELECT BOX
while ((data = reader.readNext()) != null) {
// Skips CSV File Headings: LVPL and EMAIL_ID
if(counter == 0){
counter++; // Increase it so that it can't come in this block again
continue;
}
// CSV FILE DATA AS READ BY CSVREADER
lvpl = data[0]; // LVPL
email = data[1]; // EMAIL
%>
<option><%=lvpl%></option>
<%
}
%>
</select>
<input id="textbox" type="text" placeholder="email will show in here">
</body>
</html>
<%@page import="java.io.FileReader"%>
<%@page import="java.io.File"%>
<%@page import="com.opencsv.CSVReader"%>
<%@page import="java.util.ArrayList"%>
<%
// get lvpl from received request
String lvplReceived = request.getParameter("lvpl");
// Reading CSV
String lvpl = "", email = "";
int counter = 0;
boolean lvplFound = false; // becomes true when lvpl matches selected lvpl
CSVReader reader = new CSVReader(new FileReader(new File("C://mydata.csv")));
String[] nextLine;
while ((nextLine = reader.readNext()) != null) {
/* Skips CSV File Headers: LVPL and EMAIL_ID */
if(counter == 0){
counter++;
continue;
}
// CSV FILE DATA
lvpl = nextLine[0]; // LVPL
email = nextLine[1]; // EMAIL
if(lvpl.equals(lvplReceived)){ // if this lvpl matches with selected lvpl
lvplFound = true;
break;
}
}
if(lvplFound){ // print email of matched lvpl
out.print(email);
} else {
out.print("not found");
}
%>
如果这不是您想要的方式,或者您不理解此代码,请随时通过评论与我联系
有用链接:
注意:如果您现在正在学习JSP,我建议您转到JSTL。JSP不再被使用,10年前就被弃用了,因为它无法与微软的ASP。如果你继续学习JSP,将来对你不会有任何好处,特别是在印度,我不敢相信那里的人还在教授一门10年前的技术。下面是一个让您开始学习的方法。@RadhikaEmmadi将来,请将代码和数据输入到您的问题中,并在下面添加“编辑”链接。
LVPL EMAIL
aaaaa1 aaaaa1@sap.com
aaaaa2 aaaaa2@sap.com
aaaaa3 aaaaa3@sap.com
aaaaa4 aaaaa4@sap.com
aaaaa5 aaaaa5@sap.com