十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Connection conn=null;
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:空间域名、网站空间、营销软件、网站建设、贡觉网站维护、网站推广。
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/数据库名?useUnicode=truecharacterEncoding=GBK";
String name="root";
String pass="mysql密码";
conn=DriverManager.getConnection(url,name,pass);
把jsp页面中的数据打包成json串传入后台,然后在后台方法中把json串解析并封装成WorkOrderDto的数组对象,然后调用此方法传入参数即可。
Uploadify 是一个比较坑的东西,得用servlet, web.xml里配置 然后servlet接收
servlet
servlet-nameupload/servlet-name
servlet-classcom.action.upload/servlet-class
/servlet
servlet-mapping
servlet-nameupload/servlet-name
url-pattern/upload/FileUploadServlet/url-pattern
/servlet-mapping
servlet里代码
public void doGetAndPost(HttpServletRequest request,
HttpServletResponse response){
try {
request.setCharacterEncoding("utf-8");
} catch (UnsupportedEncodingException e) {
logger.error("后台添加图片,request设置编码符失败! {}",e.getMessage());
}
DiskFileItemFactory fac = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(fac);
upload.setHeaderEncoding("utf-8");
List fileList = null;
try {
fileList = upload.parseRequest(request);
} catch (FileUploadException ex) {
ex.printStackTrace();
return;
}
String imageName = null;
IteratorFileItem it = fileList.iterator();
while (it.hasNext()) {
FileItem item = it.next();
if (!item.isFormField()) {
Random r = new Random();
int rannum = (int) (r.nextDouble() * (9999 - 1000 + 1)) + 1000;
imageName=getNowStrDate() + rannum;
FileBean fileBean = new FileBean();
fileBean.setFileName(item.getName());
fileBean.setFileExtension(item.getName().substring(item.getName().indexOf(".")+1));
FileBean flbn;
try {
//文件服务器处理上传图片
flbn = FastDFSUtil.upload(fileBean, item.getInputStream());
} catch (IOException e) {
logger.info("添加图片,上传文件服务器失败!",e);
}
}
}
}
使用一些已有的组件帮助我们实现这种上传功能。常用的上传组件:Apache的CommonsFileUploadJavaZoom的UploadBeanjspSmartUpload以下,以FileUpload为例讲解1、在jsp端要注意enctype="multipart/form-data"然后只需要放置一个file控件,并执行submit操作即可2、web端核心代码如下:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{request.setCharacterEncoding("UTF-8");DiskFileItemFactoryfactory=newDiskFileItemFactory();ServletFileUploadupload=newServletFileUpload(factory);try{Listitems=upload.parseRequest(request);Iteratoritr=items.iterator();while(itr.hasNext()){FileItemitem=(FileItem)itr.next();if(item.isFormField()){System.out.println("表单参数名:"+item.getFieldName()+",表单参数值:"+item.getString("UTF-8"));}else{if(item.getName()!=null!item.getName().equals("")){System.out.println("上传文件的大小:"+item.getSize());System.out.println("上传文件的类型:"+item.getContentType());System.out.println("上传文件的名称:"+item.getName());FiletempFile=newFile(item.getName());Filefile=newFile(sc.getRealPath("/")+savePath,tempFile.getName());item.write(file);request.setAttribute("upload.message","上传文件成功!");}else{request.setAttribute("upload.message","没有选择上传文件!");}}}}catch(FileUploadExceptione){e.printStackTrace();}catch(Exceptione){e.printStackTrace();request.setAttribute("upload.message","上传文件失败!");}request.getRequestDispatcher("/uploadResult.jsp").forward(request,response);}
你难道是在主线程中直接new server()的?这样主线程当然会被一直block住。应该新开一个线程new Thread();把new server()放到新线程里面去。
线程是可以嵌套的。可以参考一下这个思路:要启的服务的时候,先在主线程中new一个server的线程,在server中new多个socket或lisner的线程去发布你的服务。