코딩이 쉬워진다!/01. java

자바 파라미터 값 받기

javajin 2018. 10. 11. 09:50
728x90
반응형
SMALL

1.변경 버튼 클릭시,팝업 (0)

2.팝업화면에서 기존 비밀번호 데이터 가져오기 (0)

3.팝업화면에서 신규 비밀번호 입력받은 데이터 가져오기 (X)


1. 팝업 띠울때 Model에 있는 companyId와 TelNO 을 넘겨준다.

Sys01_CompanyModel(해당 Model)

Sys01_Lookup_Company / open 메서드로 가라(비밀번호 변경을 위한 팝업 페이지)

Sys01_CompanyModel passWordModel = grid.getSelectionModel().getSelectedItem();

Sys01_Lookup_Company lookupPW = new Sys01_Lookup_Company();

lookupPW.open(passWordModel.getTelNo02(), passWordModel.getCompanyId(), new InterfaceCallbackResult() {


2.Sys01_Lookup_Company / open 메서드 호출시 데이터를 받을수 있도록 open 메서드 아규먼트 형태를 만들어준다.

public void open (String oldPw, Long companyId, InterfaceCallbackResult callback) {

open 메서드에 아규먼트로 oldPw, companyId으로 받아준다.


*call-by-value 매커니즘은 함수로 인자를 전달할 때 전달될 변수의 값을 복사하여 함수의 인자로 전달한다. 또한 복사된 값은 함수 내에서 local value 다.*


그러므로 전역변수로 사용할 수 있도록 Long companyId; 선언한다.


open메서드에 인자로 전달할 수 있도록 한 

public void open (String oldPw, Long companyId, InterfaceCallbackResult callback) { 에서 전달 받은 값을 변수에 넣어준다.


this.companyId = companyId;

oldPassWord.setValue(oldPw);

this.callback = callback;


3. 신규비밀번호 변경 후 저장버튼 클릭시 updatePw()메서드에서 데이터를 처리해 준다.

데이터값을 전체를 넘겨서 넣을떄 사용하는 editDriver.flush() 처음에는 이걸 사용했지만 

업데이트할 데이터가 2개 임으로 ServiceRequest을 사용하여 데이터를 한개씩 처리했다.

ServiceRequest request = new ServiceRequest("sys.Sys01_Company.updatePw");

request.putLongParam("companyId", companyId);

request.putStringParam("newPassWord",newPassWord.getValue());

ServiceCall service = new ServiceCall();

service.execute(request, this);


-> 클라이언트 단에서 rquest 요청한다.

4. 서버 단에서 updatePw() 메서드 ./HashMap으로 처리한다.

public void updatePw(SqlSession sqlSession, ServiceRequest request, ServiceResult result) {

Map<String,Object> param = new HashMap<String, Object>();  // String 형태, Object는 (Long, String 형태 다 받을 수 있다.)

param.put("companyId", request.getLongParam("companyId")); // 실제 디비에 칼럼값 "", 클라이언트에서 request 보낸 형태를 request.getLongParam("companyId")

param.put("telNo02", request.getStringParam("newPassWord"));

sqlSession.update("sys01_company.updatePw", param);

result.setStatus(1); //1:정상 (0으로 했을경우 에러메시지가 보여진다.)

}


5. xml 에 update 문을 만들어준다.

<update id="updatePw"  parameterType="HashMap" > 

update sys01_company

   set sys01_tel2 = #{telNo02}

where sys01_company_id = #{companyId}

</update>

728x90
반응형
LIST

'코딩이 쉬워진다! > 01. java' 카테고리의 다른 글

이클립스 cafe24 연동  (0) 2018.11.08
첨부파일 삽질일지  (0) 2018.10.26
Git Hub 사용법  (0) 2018.08.17
BMI 비만도 측정하기  (0) 2018.01.21
study 계획  (1) 2018.01.20