테스트 사이트 - 개발 중인 베타 버전입니다

mini_home_num이 null값이라는데 어떻게 해야 할까요? 채택완료

toto1234 2년 전 조회 2,678

</p>

<p><update id="homethumbnail" parameterType="int"></p>

<p>UPDATE mini_home SET mini_home_thumbnail = #{mini_home_thumbnail} WHERE mini_home_num = #{mini_home_num}</p>

<p></update></p>

<p>

 

</p>

<p>package kr.co.trip.mvc.vo;</p>

<p>import org.apache.ibatis.type.Alias;

import org.springframework.web.multipart.MultipartFile;</p>

<p>import lombok.Getter;

import lombok.Setter;</p>

<p>@Alias("minihvo")

@Getter

@Setter

public class Mini_HomeVO {

    private int mini_home_num;

    private String mini_home_title;

    private String mini_home_content;

    private String mini_home_thumbnail;

    private String mini_home_host;

    private String mini_home_date;

    

    private MultipartFile mfile;   </p>

<p>}</p>

<p>

</p>

<p>@PostMapping("/mproInsert")</p>

<p>public String mproInsert(@RequestParam("mini_home_num") String mini_home_num,</p>

<p>Mini_HomeVO vo,</p>

<p>@RequestParam("mfile") MultipartFile mfile, Model model) {</p>

<p> </p>

<p>model.addAttribute("");</p>

<p> </p>

<p>try {</p>

<p>// mini_home_num을 정수로 변환</p>

<p>int num = Integer.parseInt(mini_home_num);</p>

<p> </p>

<p>// 모델에 mini_home_num 추가</p>

<p>model.addAttribute("mini_home_num", num);</p>

<p> </p>

<p>MultipartFile mf = vo.getMfile();</p>

<p>String oriFn = mf.getOriginalFilename();</p>

<p>System.out.println("oriFn : " + oriFn);</p>

<p> </p>

<p>StringBuffer path = new StringBuffer(); // [서버경로]</p>

<p>path.append(filePath).append("\\");</p>

<p>path.append(oriFn);</p>

<p>System.out.println("FullPath : " + path);</p>

<p> </p>

<p>File f = new File(path.toString());</p>

<p> </p>

<p>try {</p>

<p>mf.transferTo(f);</p>

<p>vo.setMini_home_thumbnail(oriFn);</p>

<p> </p>

<p>// 2. 서비스 메서드를 호출하여 데이터베이스에 데이터를 추가</p>

<p>mini_DiaryService.homethumbnail(num); // homethumbnail 메서드 수정 필요</p>

<p>vo.getMini_home_thumbnail();</p>

<p> </p>

<p>} catch (IllegalStateException | IOException e) {</p>

<p>e.printStackTrace();</p>

<p>}</p>

<p> </p>

<p>return "redirect:mdiaryhome";</p>

<p>} catch (NumberFormatException e) {</p>

<p>// 정수로 변환할 수 없는 경우에 대한 예외 처리</p>

<p>e.printStackTrace();</p>

<p>// 에러 처리 로직을 추가하세요.</p>

<p>return "error/error"; // 예를 들어 에러 페이지로 리다이렉트하거나 에러 메시지를 보여줄 수 있습니다.</p>

<p>}</p>

<p>}</p>

<p>

</p>

<p><script></p>

<p> </p>

<p>// mini_home_num의 값을 가져오기</p>

<p>var mini_home_num = $("#mini_home_num").val();</p>

<p> </p>

<p>// 가져온 값 출력</p>

<p>console.log("mini_home_num: " + mini_home_num);</p>

<p>$(document).ready(function() {</p>

<p>$("#uploadButton").click(function() {</p>

<p>// Get the form data</p>

<p>var mini_home_num = $("#mini_home_num").val();</p>

<p> </p>

<p>// Check if mini_home_num is a valid number</p>

<p>if (isNaN(parseInt(mini_home_num))) {</p>

<p>alert("올바른 숫자를 입력하세요.");</p>

<p>return; // Do not proceed with the Ajax request</p>

<p>}</p>

<p> </p>

<p>var formData = new FormData($("#profileForm")[0]);</p>

<p> </p>

<p>// Send the Ajax request</p>

<p>$.ajax({</p>

<p>type: 'POST',</p>

<p>url: '/trip/mini/mproInsert',</p>

<p>data: formData,</p>

<p>processData: false,</p>

<p>contentType: false,</p>

<p>success: function(data) {</p>

<p>if (data === 'InsertSuccess') {</p>

<p>console.log('프로필 등록 완료');</p>

<p>// 성공 처리 코드 추가</p>

<p>} else {</p>

<p>alert('로그인 이후 이용해주시기 바랍니다.');</p>

<p>console.log('프로필 등록 실패');</p>

<p>// 실패 처리 코드 추가</p>

<p>}</p>

<p>},</p>

<p>error: function() {</p>

<p>console.log('통신실패');</p>

<p>// 오류 처리 코드 추가</p>

<p>}</p>

<p>});</p>

<p>});</p>

<p>});</p>

<p></script></p>

<p>

여기서 mini_home_num을 hidden값으로 전송하려고 하는데 자꾸 null값이라고 나옵니다.

이 소스코드 부분을 어떻게 수정해야 할까요?

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
A
2년 전

HTML 에 부분에는요

</p>

<pre>
<code><input type="hidden" id="mini_home_num" name="mini_home_num" value="${mini_home_num}" /></code></pre>

<p><code>

 

그리고 자바 스크립트 부분에

 

</span></font></p>

<pre>
<code>var mini_home_num = $("#mini_home_num").val();</code></pre>

<p><font face="monospace"><span style="font-size: 11.375px;">

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인