제품 부품을 추가하는 원리는 제품 범주를 추가하는 것과 동일합니다. 기사를 참조하십시오 : 제품 범주 추가 및 업데이트는 제품 범주보다 더 복잡합니다. 제품에는 많은 속성이 있기 때문에 해당 데이터베이스에 더 많은 필드가 있습니다. 사진을 업로드하기 위해 제품을 추가 할 수있는 옵션도 있습니다. 이 작은 컨텐츠는 다음 기사에서 별도로 설명 될 것입니다. 여기에는 지식 지점이 포함되기 때문에 Struts2는 파일 업로드 기능을 구현한다는 것입니다. 나는 더 이상 말하지 않을 것입니다. 이제 제품 부품 추가 코드를 개선하기 시작하겠습니다.
1. 제품 추가
1.1 제품에 대한 UI 구현 추가 <br /> 먼저 query.jsp에서 제품 부품 추가 코드를 완료합니다.
다음으로 Save.jsp의 특정 구현을 살펴 보겠습니다.
<%@ page language = "java"import = "java.util.*"pageEncoding = "utf-8"%> <! doctype html public "-// w3c // dtd html 4.01 Transitional // en"> <html> <head> <%@ include public/head. 여백 : 10px; }. message) 형식 : {// 기능 구현이 false를 반환하는 경우, 검증이 유효성 검사기에 실패합니다 : function (value, param) {// 현재 파일 ext = value.substring ( '.')의 접미사 이름을 얻습니다 arr.length; if (ext == arr [i]) retry} return em; JSON 형식으로 URL로 보내기 : 'category_query.action', valuefield : 'id', 'id', textfield : 'type', // 드롭 다운 목록은 모든 제품 범주를 보여줍니다. 패널 height : 'auto', 'auto', // 적응력 높이 패널 위드 : 120, // 드롭 다운 목록은 두 가지 구성 요소로 구성되어 있습니다. // ComboBox는 콤보 상속 validatebox를 상속하므로 여기에서 바로 확인을 설정할 수 있습니다. $ ( "input [name = name]". $ ( "input [name = price]"). 번호 박스 ({필수 : true, missingMessage : '제품 가격을 입력하십시오', min : 0, precision : 2, // 소수점 이하 두 자리를 유지하십시오 : '$'}); $ ( "입력 [name = 'fileImage.upload']"). $ ( "textArea [name = warment]"). validatebox ({필수 : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); $ ( "textArea [name = xremark]"). validatebox ({requever : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); $ ( "textArea [name = xremark]"). validatebox ({requever : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); // 확인 $ ( "#ff"). form ( "disablevalidation"); // 버튼의 이벤트 $ ( "#제출"). 클릭 (function () {// verification $ ( "#ff"). form ( "enableValidation"); // 확인이 성공한 경우 ($ ( "#ff"). 양식 ( "validate") {// 제출 방법을 부르기 위해 제출 ( "#ff"). 'Product_save.action', function () {// 현재 Window Parent를 닫습니다. $ ( "Close"). // events $ ( "#reset"). click (function () {$ ( "#ff"). form ( "disablevalidation"); // 재설정이 필요하지 않습니다. // 현재 양식 데이터 $ ( "#ff"). form ( "Reset");}); }); </script> </head> <body> <form id = "ff"method = "ff"method = "post"enctarpe = "multipart/form-data"> <div> upbuttion name : </label> <intup type = "text"= "name"/> </div> <div> <div> </label> <input type = "text"= "prost". <입력 유형 = "file"name = "fileImage.upload"/> </div> <div> <labe> 카테고리 : </label> <입력 ID = "CC"이름 = "category.id"/> </div> <div> <label> 권장 사항에 추가 : </label> 권장 : <입력 유형 "이름 ="valled = "" "" "" "" "" "" "" <입력 유형 = "radio"name = "ormend"value = "false"/> </div> <div> <label> </div> <div> <label> </label> 나열 : <input type = "radio"name "="checked "value ="value = "true"/> 제거 : <입력 유형 = "radio"name = "false"/> <div> <label> <label> cols = "40"rows = "4"> </textarea> </div> <div> <label> 자세한 설명 : </label> <textarea name = "xremark"cols = "40"rows = "8"> </textarea> </div> <a id = "href ="#"> ad"href "href"href "href"href "href" </div> </form> </body> </html>위의 JS 코드의 사용자 정의 메소드 부분을 주로 살펴 보겠습니다. 주로 업로드 된 이미지의 확인을 정의합니다. 특정 분석은 다음과 같습니다.
그런 다음 이미지 확인 섹션에서 사용자 정의 메소드를 사용할 수 있습니다.
1.2 제품 추가의 배경 구현
@Controller ( "ProductAction") @Scope ( "프로토 타입") Public Class ProductAction은 BaseAction <Product> {// 다른 코드를 생략합니다 ... Public Void Save () 예외 {// 업로드 된 그림 처리, 다음 블로그는 struts2 파일의 업로드를 구체적으로 분석합니다 (새 날짜 ()); // 프론트 데스크가 시간 필드를 통과하지 않기 때문에 현재 시간을 설정하십시오. System.out.println (모델); // 제품 정보 저장소 제품 서비스 서비스 (모델); }} 2. 제품을 업데이트하십시오
2.1 제품의 UI 구현 업데이트
먼저 query.jsp에서 업데이트 된 제품 부분에 대한 코드를보십시오.
다음으로 update.jsp의 내용을 살펴 보겠습니다.
<%@ page language = "java"import = "java.util.*"pageEncoding = "utf-8"%> <! doctype html public "-// w3c // dtd html 4.01 Transitional // en"> <html> <head> <%@ include public/head. 여백 : 5px; }. 처리 된 데이터를이면으로 반환해야 할 필요가 있으므로 배경은 데이터를 JSON 형식으로 패키지하고 URL로 보내야합니다. 'Category_Query.action', ValueField : 'ID', 'Type': // 드롭 다운 목록은 제품의 범주 이름 패널을 보여줍니다. 동시에 편집 가능한 두 폭을 설정하십시오. // 드롭 다운 상자는 편집 할 수 없습니다. // Combobox는 콤보 상속 ValidateBox를 상속받을 수 있습니다. dg.datagrid ( "GetSelections"); // 양식에 echo $ ( "#ff")에 해당하는 데이터 필드를로드합니다. ( "#ff"). 양식 ( 'load', {id : rows [0] .id, 이름 : rows [0]. 이름, 가격 : 행 [0] .Price, 비고 : 행 [0] .Remark, Xremark : Rows [0] .xremark, 댓글 : Rows [0]. Open : 행 [0] .open, 'category.id': 행 [0] .category.id // easyui는 ac // 데이터를 반영한 후 확인 함수를 설정 한 후 $ ( "input [name = name]"). validatebox ({require : true, missingMessage : '범주 이름을 입력하십시오'}); $ ( "input [name = price]"). 번호 박스 ({필수 : true, missingMessage : '제품 가격을 입력하십시오', min : 0, precision : 2, // 소수점 이하 두 자리를 유지하십시오 : '$'}); $ ( "입력 [name = 'fileImage.upload']"). $ ( "textArea [name = warment]"). validatebox ({필수 : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); $ ( "textArea [name = xremark]"). validatebox ({requever : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); $ ( "textArea [name = xremark]"). validatebox ({requever : true, missingMessage : '제품의 간단한 설명을 입력하십시오'); // 확인 $ ( "#ff"). form ( "disablevalidation"); // register button의 event $ ( "#btn"). click (function () {// verification $ ( "#ff"). form ( "enableValidation"); // 확인이 성공하면 데이터 제출 ($ ( "#ff"). 양식 ( "validate") {// 제출 방법을 호출하여 $ ( "#ff"). 'product_update.action', // 제품의 요청을 제출할 때 : // 성공하면 현재 창을 닫고 $ ( "#win"); }); </script> </head> <body> <form id = "ff"method = "post"enctype = "multipart/form-data"> <div> <label for = "name"> uppubly name : </label> <input type = "text"name = "name"/</div> <div> < "price"> </div> <input type = "text" "prace" </label> <input type = "file"= "file"name = "fileImage.upload"/> </div> <div> <label for = "acc cols = "40"rows = "4"> </textarea> </div> <div> <label for = "xremark"> 자세한 설명 : </label> <textarea name = "xremark"cols = "40"rows = "8"> </textarea> </div> <div> < "label"> 권장 제품 : </label> 예. value = "true" /> no : <input type = "radio"name = "value ="false " /> < /div> <div> <레이블"for = "Open"> 유효 제품 : < /label> 나열 : <input type = "radio"name = "value ="true " /> 제거 : <input type ="radio "name ="value = "false" /> <a id = "vale" /> <a id = "value" /> href = "#"data-options = "iconcls : 'icon-edit'"> update </a> </a> <input type = "hidden"name = "id"/> </div>`</form> </body> </html> 업데이트 부분은 기본적으로 제품 범주의 업데이트와 동일합니다. 나는 그것을 다시 반복하지 않을 것이다. 다음은 배경 업데이트 부분의 구현입니다.
2.2 업데이트 된 제품 배경 구현
@Controller ( "ProductAction") @Scope ( "프로토 타입") Public Class ProductAction은 BaseAction <Product> {// 다른 코드를 생략합니다 ... Public void update () 예외 {// 업로드 된 그림을 처리하고 다음 블로그는 struts2 파일 model.setDate (new date ())의 업로드를 구체적으로 분석합니다. // 프론트 데스크가 시간 필드를 통과하지 않기 때문에 현재 시간을 설정하십시오. System.out.println (모델); // ProductService.update (모델) 업데이트; }} 제품 카테고리 업데이트와 비교하여 이미지 업로드 작업은 하나만 있습니다. 배경에서 업로드 된 이미지를 처리해야합니다. 다음 기사에서 struts2의 파일 업로드 기능을 자세히 분석합니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.